第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')]