示例:
r = re.search("a(..)d(.)f", "xxabcdefg")
r.span()
会返回(2, 8)
整个字符串
但我想获得两个被捕获群组的开始和结束位置,因此(2, 4)
和(6, 7)
。
答案 0 :(得分:2)
r.span()
方法采用组参数;每个组都有编号,因此请使用1
和2
来获取整个文本的两个组0
的范围(其中0
是默认值):
>>> import re
>>> r = re.search("a(..)d(.)f", "xxabcdefg")
>>> r.span()
(2, 8)
>>> r.span(1)
(3, 5)
>>> r.span(2)
(6, 7)
来自MatchObject.span()
method文档:
span([group])
对于MatchObject
m ,返回2元组(m.start(group), m.end(group))
。请注意,如果 group 没有为匹配做出贡献,则为(-1, -1)
。 组默认为零,即整场比赛。