我正在寻找一个可以找到重复字母的正则表达式。所以任何字母两次或更多次,例如:
booooooot or abbott
我不会提前知道我要找的那封信。
这是我在面试中被问到然后在面试中被问到的问题。没有多少人理解正确。
请您参考如下方法:
您可以找到任何字母,然后使用 \1
第二次(或更多)找到相同的字母。如果你只需要知道字母,那么$1
将包含它。否则,您可以将第二个匹配项连接到第一个匹配项上。
my $str = "Foooooobar";
$str =~ /(\w)(\1+)/;
print $1;
# prints 'o'
print $1 . $2;
# prints 'oooooo'