Shw*_*eta 7 python regex replace special-characters
我有一个字符串:
string = "happy.....!!!"
Run Code Online (Sandbox Code Playgroud)
我希望输出像:
new_string = "happy.!"
Run Code Online (Sandbox Code Playgroud)
我知道如何替换任何特殊字符的多次出现.它可以如下完成:
line = re.sub('\.+', '.', line)
Run Code Online (Sandbox Code Playgroud)
但我想替换所有特殊字符,如",./ \等等.一种方法是为每个特殊字符编写它.但是想知道是否有一种简单的方法可以为一行中的所有特殊字符编写它.
anu*_*ava 12
您可以使用\W
以匹配任何非单词字符:
line = re.sub(r'\W+', '.', line)
Run Code Online (Sandbox Code Playgroud)
如果要替换相同的特殊字符,请使用:
line = re.sub(r'(\W)(?=\1)', '', line)
Run Code Online (Sandbox Code Playgroud)
我想你的意思是这个,
line = re.sub(r'(\W)\1+', r'\1', line)
Run Code Online (Sandbox Code Playgroud)
https://regex101.com/r/eM5kV8/1
归档时间: |
|
查看次数: |
5181 次 |
最近记录: |