我是一个非常新的Python
如果有重复的话,我想改变句子.
正确
现在我使用这个reg.但它完全改变了字母.防爆."我的朋友和我很高兴" - >"我的朋友,很高兴"(它删除了"我"和空格)错误
text = re.sub(r'(\w+)\1', r'\1', text) #remove duplicated words in row
Run Code Online (Sandbox Code Playgroud)
我怎样才能做同样的改变,而不是字母,它必须检查单词?
非正则表达式解决方案使用itertools.groupby:
>>> strs = "this is just is is"
>>> from itertools import groupby
>>> " ".join([k for k,v in groupby(strs.split())])
'this is just is'
>>> strs = "this just so so so nice"
>>> " ".join([k for k,v in groupby(strs.split())])
'this just so nice'
Run Code Online (Sandbox Code Playgroud)
text = re.sub(r'\b(\w+)( \1\b)+', r'\1', text) #remove duplicated words in row
Run Code Online (Sandbox Code Playgroud)
该\b空字符串相匹配,但只在一个单词的开头或结尾。
| 归档时间: |
|
| 查看次数: |
4065 次 |
| 最近记录: |