开发者

matching 3 or more of the same character in python

开发者 https://www.devze.com 2023-03-16 16:20 出处:网络
I\'m trying to use regular expressions to find three or more of the same character in a string. So for example:

I'm trying to use regular expressions to find three or more of the same character in a string. So for example: 'hello' would not match 'ohhh' would.

I've tried doing things like:

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

but neither seem to work.


(\w)\1{2,} is the regex you are looking for.

In Python it could be quoted like r"(\w)\1{2,}"


if you're looking for the same character three times consecutively, you can do this:

(\w)\1\1

if you want to find the same character three times anywhere in the string, you need to put a dot and an asterisk between the parts of the expression above, like so:

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

The .* matches any number of any character, so this expression should match any string which has any single word character that appears three or more times, with any number of any characters in between them.

Hope that helps.

0

精彩评论

暂无评论...
验证码 换一张
取 消