我有一个带有正则表达式列表的文件和包含'\ n'的字符串,即一个带有单独行的字符串...我需要一个通用的正则表达式,它可以匹配整个行与正则表达式文件中的模式,这样我就可以做点什么
re.compile(r'generic_regex%s')%regex_pattern来自文件,它自动匹配整行,就像grep一样。
任何想法??
答案 0 :(得分:5)
类似的东西:
>>> re.findall(r"(^.*?%s.*?$)" %expression, text, re.MULTILINE)
答案 1 :(得分:0)
调整任何边界等......
import re
import mmap
def find_re(fname, rx): # rx is a compiled re object
with open(fname) as fin:
mm = mmap.mmap(fin.fileno(), 0, access=mmap.ACCESS_READ)
return rx.findall(mm)
只需顺序访问即可快速...如果需要重复多行,请重新使用正则表达式...