python中用正则表达式去掉文本中所有的标点符号

Python089

python中用正则表达式去掉文本中所有的标点符号,第1张

我的理解是  python’s的“ ’ ”也是字符 ,和标点符号一样。你只要把去除的字符都加到正则表达式的括号中就可以了。 ,所以:

import re

r='[’!"#$%&\'()*+,-./:<=>?@[\\]^_`{|}~]+'

line=re.sub(r,'',"python’s")

print line

你画红线的\b\w+\b中\b匹配的是字符的边界,然后\w匹配数字、字母、下划线中任意一个字符, 相当于 [a-zA-Z0-9_]。所以它不会匹配标点或者符号。你可以试试\b[\w,\.]+\b这个可以匹配字符和,.