我清理标点符号的正则表达式不起作用

时间:2015-11-08 15:47:32

标签: python regex

我正在尝试使用标点符号清理CSV文件。到目前为止,我已经能够使用myFile = re.sub("\d+", "", str(myFile))删除数字 但是,我无法删除标点符号。

我尝试过以下操作,但收到的错误是语法无效:

chars = re.escape(string.punctuation)
myFile = re.sub (r '['+chars+']',' ',str(myFile))

当我使用

myFile = re.sub ('@,#,?',' ',str(myFile))

什么都没有删除。

我看过几个帖子,但似乎仍然无法做到这一点。

2 个答案:

答案 0 :(得分:0)

myFile = re.sub (r '['+chars+']',' ',str(myFile))
#                 ^ remove that space

您也可以删除r,因为这不是必需的。

答案 1 :(得分:0)

myFile = re.sub ('[^\s\w]+',' ',str(myFile))

这将找到所有标点符号并且无需替换