我正在尝试做我认为是简单的正则表达式查询的事情。在下面的示例中,我试图找到单词“副词”和“动词”之间的所有文本。我得到的输出是'verb',我认为这是文本“动词”位于“副词”中的结果。re.search(r'adverb.+noun|\bverb', 'adverb with text verb text from here on')我的问题是,如何在这里获取所需的文本?如您所知,我需要满足多个结尾字符串单词的需要。如果有什么不同,我正在使用Python 2.7。
1 回答

ibeautiful
TA贡献1993条经验 获得超6个赞
您的正则表达式应如下所示:
您可以使用re.search()课程。
import re
string = 'adverb with text verb text from here on'
print re.findall(r'adverb(.*?)verb', string)
并打印出以下内容:
# [' with text ']
编辑:
如果您还想得到noun,请使用以下方法:
import re
string = [
'adverb with text verb text from here on',
'adverb with text noun text from here on'
]
print [re.findall(r'adverb(.*?)(?:verb|noun)', s) for s in string]
现在您有了:
# [[' with text '], [' with text ']]
添加回答
举报
0/150
提交
取消