Python重新找到第一个搜索匹配的索引位置

时间:2014-07-20 08:42:06

标签: regex python-2.7

我有一系列字符串,其中大部分都包含4行数字。我想使用Python将字符串切换到第四位数的末尾。有时字符串包含多个这样的模式。我想要的是我的正则表达式的FIRST匹配的索引位置。我能得到的是最后一场比赛。

myString = 'Today is June 14, 2019. I sometimes like to think back when I was a child in 1730.'
theYear = re.compile("\d{4}")
[(m.start(0), m.end(0)) for m in re.finditer(theYear, myString)]

print m.span(0)

结果是(77,81),这是第二个日期的索引位置,而不是第一个日期。我知道问题是我的循环,它将迭代所有的匹配,留给我最后一个。但是我没有能够弄清楚如何在没有循环的情况下访问这些索引位置。

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

print theYear.search(myString).span()