在python中匹配3个或更多相同的字符

时间:2011-06-29 09:07:11

标签: python regex

我正在尝试使用正则表达式在字符串中查找三个或更多相同的字符。例如: '你好'不匹配 '哦'会的。

我尝试过这样的事情:

re.compile('(?!.*(.)\1{3,})^[a-zA-Z]*$') 
re.compile('(\w)\1{5,}')

但似乎都不起作用。

2 个答案:

答案 0 :(得分:16)

(\w)\1{2,}是您正在寻找的正则表达式。

在Python中,可以引用r"(\w)\1{2,}"

答案 1 :(得分:2)

如果你连续三次寻找同一个角色,你可以这样做:

(\w)\1\1

如果你想在字符串中的任何地方找到相同的字符三次,你需要在上面的表达式的各部分之间加一个点和一个星号,如下所示:

(\w).*\1.*\1

.*匹配任意数字的任何数字,因此该表达式应匹配任何单词字符出现三次或更多次的字符串,其中包含任意数量的任何字符。

希望有所帮助。