捕获其中没有连字符的单词 - Python

时间:2017-01-19 19:02:46

标签: python regex

例如,我们有这样的文字:

你好,但我不想要这个非对象词。

使用正则表达式,如何提取必须以字母开头并且只包含字母或数字的单词?例如,在这个例子中我只想要:

您好,但我想要这个词

任何帮助将不胜感激!谢谢!

2 个答案:

答案 0 :(得分:2)

您可以在正则表达式中使用外观:

>>> str = "Hello but I don't want1 this non-object word in it."
>>> print re.findall(r'(?:(?<=\s)|(?<=^))\w+(?=[.\s]|$)', str)
['Hello', 'but', 'I', 'want1', 'this', 'word', 'in', 'it']

https://redmine/users/current.json

答案 1 :(得分:1)

  

提取必须以字母开头且只有字母 的字词   数字在其中

使用re.sub函数的替代解决方案(来自re模块):

s = "Hello but I don't want this non-object word in it."
s = re.sub(r'\s?\b[a-zA-Z]+?[^\w ][\w]+?\b', '', s)

print(s)

输出:

Hello but I want this word in it.