以下代码导致
>>> r = re.compile(r'(?:\|(.+?)|([a-z]+))<(.+?)>')
>>> print r.findall('hello, stack<overflow> / hello|fluid-<overflow>')
[('', 'stack', 'overflow'), ('fluid-', '', 'overflow')]
我想要的是[('stack', 'overflow'), ('fluid-', 'overflow')]
。也就是说,我想忽略任何不匹配的组。我如何做到这一点?你知道吗
将正则表达式更改为:
使用look behind断言管道字符
|
,但不将其包含在主匹配中。你知道吗像这样:
相关问题 更多 >
编程相关推荐