我希望使用正则表达式搜索大型文本文件并设置以下代码:
import re
regex = input("REGEX: ")
SearchFunction = re.compile(regex)
f = open('data','r', encoding='utf-8')
result = re.search(SearchFunction, f)
print(result.groups())
f.close()
当然,这是行不通的,因为第二个参数re.search
应该是字符串或缓冲区。但是,我无法将所有文本文件插入到字符串中,因为它太长(意味着它会花费很长时间)。还有什么选择呢?
您检查每行的模式是否匹配。这不会将整个文件加载到内存中:
for line in f:
result = re.search(SearchFunction, line)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)