import os
searchquery = 'word'
with open('Y:/Documents/result.txt', 'w') as f:
for filename in os.listdir('Y:/Documents/scripts/script files'):
with open('Y:/Documents/scripts/script files/' + filename) as currentFile:
for line in currentFile:
if searchquery in line:
start = line.find(searchquery)
end = line.find("R")
result = line[start:end]
print result
f.write(result + ' ' +filename[:-4] + '\n')
Теперь это хорошо подходит для поиска «слова» и печатает все после слова до «R», при условии, что оно находится на одной линии. Однако, если «R» находится на линии, он не будет печатать материал перед ним.Python поиск текста по нескольким строкам
например:
this should not be printed!
this should also not be printed! "word" = 12345
6789 "R" After this R should not be printed either!
В случае выше 6789 на линии 3 не будет печататься с моим током. Однако я хочу, чтобы это было. Как заставить python продолжать перемещаться по нескольким строкам, пока не достигнет «R».
Спасибо за помощь!