fork download
  1. import re
  2.  
  3. strings = [
  4. "aaaa**!!!cccc333**",
  5. "aaabbbbaaa",
  6. "aaabbbbbbaaa****ccc",
  7. "!!! aaaabbbaaa ccc!!!"
  8. ]
  9. pattern = r"(\S)\1{3,}|(\S)\2{2}"
  10. for s in strings:
  11. matches = re.finditer(pattern, s)
  12. result = []
  13. for matchNum, match in enumerate(matches, start=1):
  14. if match.group(2):
  15. result.append(match.group(2))
  16. print(result)
Success #stdin #stdout 0.03s 9424KB
stdin
Standard input is empty
stdout
['!', '3']
['a', 'a']
['a', 'a', 'c']
['!', 'b', 'a', 'c', '!']