【发布时间】:2011-06-09 09:56:23
【问题描述】:
我想从某个位置开始在较大的字符串中搜索正则表达式匹配,并且不使用字符串切片。
我的背景是我想通过一个字符串迭代搜索各种正则表达式的匹配。 Python 中的一个自然解决方案是跟踪字符串中的当前位置并使用例如
re.match(regex, largeString[pos:])
在一个循环中。但是对于非常大的字符串(~ 1MB),largeString[pos:] 中的字符串切片变得昂贵。我正在寻找一种方法来解决这个问题。
旁注:有趣的是,在 Python documentation 的一个小众市场中,它谈到了 match 函数的可选 pos 参数(这正是我想要的),而函数本身却找不到:-)。
【问题讨论】: