Jak wyodrębnić numery wierszy, które pasują do wyrażenia regularnego w pliku tekstowym
Robię projekt dotyczący statystycznego tłumaczenia maszynowego, w którym muszę wyodrębnić numery wierszy z pliku tekstowego ze znacznikiem POS, który pasuje do wyrażenia regularnego (dowolny nierozdzielony czasownik frazowy z cząstką „na zewnątrz”) i zapisać numery linii do pliku (w Pythonie).
Mam to wyrażenie regularne: „w * _VB.? Sout_RP” i mój plik tekstowy z tagami POS: „Corpus.txt”. Chciałbym uzyskać plik wyjściowy z numerami linii zgodnymi z wyżej wymienionym wyrażeniem regularnym, a plik wyjściowy powinien mieć po jednym numerze linii na wiersz (bez pustych wierszy), np .:
2
5
44
Do tej pory wszystko, co mam w swoim skrypcie, jest następujące:
OutputLineNumbers = open('OutputLineNumbers', 'w')
with open('Corpus.txt', 'r') as textfile:
phrase='\w*_VB.?\sout_RP'
for phrase in textfile:
OutputLineNumbers.close()
Masz pomysł, jak rozwiązać ten problem?
Z góry dzięki za pomoc!