Javascript Regex:查找并删除重复次数少于一定次数的字母



比方说,对于字符串"lllrrrrrruudddr";,我需要删除那些重复次数少于4次的字母,即";lll";以及";uu";以及";r";,导致";rrrrrrrrdddd";。

到目前为止,我只能使用一种不可怕的解决方法,用某些特殊标记标记那些重复至少4次的字母,并删除所有其他字母,然后删除我的特殊标记。它远非优雅,而且如果原始字符串恰好包含与我的特殊标记相同的字母,则很容易出错。

我会想到这样的模式(regex101(。使用Javascript查看此演示(tio.run(。

s = s.replace(/(([a-z])2{3,})|[a-z]/gi,'$1');

我们的想法是捕捉第1组中重复4次或更多次的字母,并用空字母替换剩下的字母。

最新更新