【发布时间】:2020-09-03 08:59:37
【问题描述】:
我对 Regex 有点陌生,一直在尝试构建代码来删除重复项。
结果应该是这样的 'abcd1"
我的代码如下:
import re
text = 'aaaaabbbcccddd111'
while re.search(r'([a-z])(.*)\1', text):
text = re.sub(r'([a-z])(.*)\1', r'\1\2', text)
print(text)
但是,它不会删除“1”,只会删除 a-z 字符。
我应该包括什么来完成这项工作?
谢谢!
【问题讨论】:
-
使用
re.sub(r'(.)\1*', r'\1', text) -
将匹配的数字添加到字符类
([a-z0-9])\1+并替换为r'\1'regex101.com/r/sYO49h/1
标签: python-3.x regex duplicates