我想匹配一个可选结束句子'other (\\w+)'
。例如,正则表达式应该如下匹配两个句子并提取单词'things':为什么我不能匹配python中正则表达式的最后部分?
- 苹果和其他东西。
- 苹果很大。
我写了一个正则表达式,如下所示。但是,我得到了一个结果(None,)
。如果我删除最后的?
。我会得到正确的答案。为什么?
>>> re.search('\w+(?: other (\\w+))?', 'A and other things').groups()
(None,)
>>> re.search('\w+(?: other (\\w+))', 'A and other things').groups()
('things',)
因为用“?“你在”事物“之后期待更多的单词 – tanjir
?导致产生的RE匹配前面RE的0或1个重复(来自python网站) – Zety