正则表达式匹配清晰的单个标点符号+减少连续标点符号

时间:2017-02-06 10:05:45

标签: python regex python-3.5

我正在尝试使用正则表达式删除“独奏”。 (预定义)标点符号并删除连续的点动标记:

almalki的电子邮件:龙卷风,美国的洪水死亡人数达到18人,未来更多的风暴和#34;

almalki龙卷风的死亡人数在美国达到18岁。未来更多风暴"

因此删除":"因为它不包含在单词中,而是保留"。"在我们中。因为包含在一个单词中。但是","在美国之后也应删除,因为这是连续的第二个标点符号。

到目前为止,我有以下代码删除连续的标点符号:

import re
r = re.compile(r'([.,/#!$%^&*;:{}=_`~()-])[.,/#!$%^&*;:{}=_`~()-]+')
n = r.sub(r'\1', "ews by almalki : Tornado, flood deaths reach 18 in U.s., more storms ahead ")
print(n)

1 个答案:

答案 0 :(得分:0)

将正则表达式模式更改为应该修复它

r = re.compile(r'([\s.,/#!$%^&*;:{}=_`~()-])[.,/#!$%^&*;:{}=_`~()-]+')