2015-10-18 95 views
2

如何通过正则表达式找到内部组的跨度? 我有下面的代码,但我不知道怎么去匹配组的跨度(开始,结束)括号内:Python正则表达式,匹配组跨度(开始和结束)

statement = r'new (car)|old (car)' 
text = 'I bought a new car and got rid of the old car' 
match = re.search(statement, text) 
match.span() 
Out: (11, 18) 
for match in re.finditer(statement, text): 
    print match.span() 
Out: (11, 18) 
Out: (38, 45) 

在这种情况下,例如,我只需要搭配“汽车”的整个范围并非整个说法。

回答

7

您必须通过span参数:

for match in re.finditer(statement, text): 
    print match.span(1) 

1参照第一组,所述默认值是零 - 这意味着整个的匹配。

相关问题