【发布时间】:2019-07-23 20:05:35
【问题描述】:
例如:
我想匹配被其他字符分隔的重复字符:
- 匹配的
stress应该返回sss - 匹配的
lambda应该返回aa - 匹配的
moonmen应该返回moonmn
我很接近,通过使用前瞻获取每个重复项的第一个字符:
['stress','lambda','moonmen'].forEach( (e) => {
console.log( e.match(/(.)(?=.*\1)/g) )
} )
但是我怎样才能得到所有重复的字符呢?
【问题讨论】:
-
正则表达式通常不适用于此类任务,它效率低下,并且无论如何都需要代码调整,因为您无法“在一次正则表达式中”实现这一目标。
-
如果您先对字符进行排序,则可以简化正则表达式。
标签: javascript regex