同一个字母连续重复三次以上,正则表达式怎么写?

例如 asSsddddfk

区分大小写, 匹配 dddd

不区分大小写,匹配sSs和dddd

(\w)\1{2,}

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-06-03
以下是在python3.7中操作的
>>> import re
>>> S = 'bbBBbcCCwWwwWsDDDd'
case1:区分大小写(不删除不满足条件的字符串)
>>> re.compile(r'(([a-zA-Z])\2*)').findall(S)
[('bb', 'b'), ('BB', 'B'), ('b', 'b'), ('c', 'c'), ('CC', 'C'), ('w', 'w'), ('W', 'W'), ('ww', 'w'), ('W', 'W'), ('s', 's'), ('DDD', 'D'), ('d', 'd')]
case2:不区分大小写(不删除不满足条件的字符串)
>>> re.compile(r'(([a-zA-Z])\2*)', re.IGNORECASE).findall(S)
[('bbBBb', 'b'), ('cCC', 'c'), ('wWwwW', 'w'), ('s', 's'), ('DDDd', 'D')]
case3:区分大小写(删除不满足条件的字符串)
>>> re.compile(r'(([a-zA-Z])\2{2,})').findall(S)
[('DDD', 'D')]
case4:不区分大小写(删除不满足条件的字符串)
>>> re.compile(r'(([a-zA-Z])\2{2,})', re.IGNORECASE).findall(S)
[('bbBBb', 'b'), ('cCC', 'c'), ('wWwwW', 'w'), ('DDDd', 'D')]
第2个回答  推荐于2017-12-15
直接这样 但是如果还有别的正则表达式的话 要注意括号的编号 ([a-zA-Z])(\1){2,}本回答被提问者采纳
第3个回答  2013-08-24
不太理解你的意思,如果有字符串aaaccwddddd,正则式要匹配aaa和dddd,还是只要匹配其中指定的字符
相似回答