![](/img/trans.png)
[英]How to get rid of words with special characters in Python using regular expressions?
[英]How do I get rid of repeating special characters with regular expressions?
我想去掉所有重復的點,除了一個點。
資料來源:
(1) "a... b."
(2) "a....... b... c."
我想要的結果:
(1) "a b."
(2) "a b c."
代碼:
import re
a = "a... b."
b = "a....... b... c."
result = re.sub("[^a-zA-Z0-9 \\.{1}]", "", a)
print(result)
result = re.sub("[^a-zA-Z0-9 \\.{1}]", "", b)
print(result)
result = re.sub("[^a-zA-Z0-9 ][\\.{2,}]", "", a)
print(result)
result = re.sub("[^a-zA-Z0-9 ][\\.{2,}]", "", b)
print(result)
不工作。
我該怎么做才能得到我的結果?
下面的代碼可以完成所需的任務
import re
result = re.sub("\\.{2,}","","a....b....c.d....e.")
print(result)
結果將是——
abc.de。
這將起作用:
import re
a = "a... b."
b = "a....... b... c."
result = re.sub("\\.{2,}","", a)
print(result)
result = re.sub("\\.{2,}","", b)
print(result)
您可以使用
re.sub(r'\.{2,}|[^a-zA-Z0-9.\s]', '', text)
請參閱正則表達式演示。
詳情:
\.{2,}
- 兩個或更多點|
- 或者[^a-zA-Z0-9.\s]
- 除 ASCII 字母、數字、任何空格或.
字符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.