如何在python中删除仅包含数字的单词?
问题内容:
我在Python中有一些由数字和字母组成的文本。像这样:
s = "12 word word2"
我想从字符串s中删除所有 仅* 包含 数字 的单词 *
所以我希望结果是
s = "word word2"
这是我有的一个正则表达式,但它适用于字母,即用空格替换每个字母。
re.sub('[\ 0-9\ ]+', ' ', line)
有人可以告诉我什么地方出了问题吗?另外,有没有比正则表达式更省时的方法?
谢谢!
问题答案:
您可以使用此正则表达式:
>>> s = "12 word word2"
>>> print re.sub(r'\b[0-9]+\b\s*', '', s)
word word2
\b
用于单词边界,\s*
并将在您的数字单词后删除0或多个空格。