Ein regulärer Ausdruck, der Teilzeichenfolgen mit N oder mehr aufeinander folgenden Zeichen findet.
import re
def nchars(s, n):
"""Suchen Sie eine Teilzeichenfolge in der Zeichenfolge s, die n oder mehr aufeinanderfolgende gleiche Zeichen enthält
"""
assert n > 0
reg = re.compile("(.)\\1{%d,}" % (n - 1)) #Wenn Sie das Komma nehmen, ist es genau n
while True:
m = reg.search(s)
if not m:
break
yield m.group(0)
s = s[m.end():]
print(list(nchars('ein gutes uuu ee', 2)))
print(list(nchars('aa Ii Uuu Uu e ooo', 3)))
Dies ist das Ausführungsergebnis.
['Gut', 'uuu', 'ee']
['Gut', 'Uuuuuuu', 'ooo']
Recommended Posts