2016-06-13 45 views
-2

Aus einer großen Textdatei möchte ich alle Orte, wo "RA" +6 Zahlen nach dem Auftreten extrahieren. Wie würde ich das tun?Finden Sie, wo eine bestimmte Reihe von Zahlen mit Regex

Zum Beispiel möchte ich die neue txt-Datei wie

aussieht
RA000000 
RA111111 
RA222222 
RA333333 
RA444444 

Wo andere Fälle von RA auch nicht angezeigt.

+0

was haben Sie bisher versucht? –

Antwort

0

Dies könnte für Sie arbeiten:

import re 

with open('input.txt') as input_file: 
    ra_list = re.findall(r'RA\d{6}', input_file.read()) 

with open('output.txt', 'w') as output_file: 
    output_file.write('\n'.join(ra_list) + '\n') 

Getestet Eingang:

hello 
RA111111 goodbye 
RA2222 RA333 
abcRA45678912345 

Ergebnis:

RA111111 
RA456789 
0

Die Regex ist ‚^ (RA \ d {6}) $ ". Drucken Sie jedes Mal, wenn die Erfassungsgruppe 1 gefunden wurde.

Verwandte Themen