我有以下格式的文本文件:反覆提取文本文件兩個分隔符之間的線,巨蟒
DELIMITER1
extract me
extract me
extract me
DELIMITER2
我想提取的DELIMITER1和DELIMITER2之間extract me
小號每個塊的.txt文件
這是我當前的非執行代碼:
import re
def GetTheSentences(file):
fileContents = open(file)
start_rx = re.compile('DELIMITER')
end_rx = re.compile('DELIMITER2')
line_iterator = iter(fileContents)
start = False
for line in line_iterator:
if re.findall(start_rx, line):
start = True
break
while start:
next_line = next(line_iterator)
if re.findall(end_rx, next_line):
break
print next_line
continue
line_iterator.next()
任何想法?
提示:如果您的文件太大而無法一次全部讀取,請將其與內存映射文件對象(通過'mmap'模塊)一起使用。 – Steven
@Brent嘗試了這一點,它的功能很好......謝謝! – Renklauf
很高興我能幫到你。如果問題的答案最好,不要忘記標記答案。 –