我正在尝试实现一个正则表达式,给定一个字符串,它会检查至少 3 个相同字符的序列,并将其替换为该字符中的两个。例如,我想打开下面的字符串:
sstttttrrrrrrriing
进入
ssttrriing
我在想一些类似的事情......
$string =~ s/(\D{3,})/substr($1, 0, 2)/e;
但这不起作用,因为:
- 它不检查三个字母字符是否相同;它可以匹配三个或更多不同字符的序列。
- 它只替换第一个匹配项;我需要适应此正则表达式中的所有匹配项。
谁能帮我?