ich eine Textdatei haben, die viele Dateien Pfad hält datei.txt:Verwendung Regex Dateipfad zu extrahieren und sie in Python speichern
C:\data\AS\WO\AS_WOP_1PPPPPP20070506.bin
C:\data\AS\WO\AS_WOP_1PPPPPP20070606.bin
C:\data\AS\WO\AS_WOP_1PPPPPP20070708.bin
C:\data\AS\WO\AS_WOP_1PPPPPP20070808.bin
...
Was ich tat, mit Regex das Datum zu extrahieren aus Pfad:
import re
textfile = open('file.txt', 'r')
filetext = textfile.read()
textfile.close()
data = []
for line in filetext:
matches = re.search("AS_[A-Z]{3}_(.{7})([0-9]{4})([0-9]{2})([0-9]{2})", line)
data.append(line)
es gibt nicht, was ich will.
sollte Meine Ausgabe wie folgt sein:
year month
2007 05
2007 06
2007 07
2007 08
und es dann als Liste von Listen speichern:
[['2007', '5'], ['2007', '6'], ['2007', '7'], ['2007', '8']]
oder speichern es als Pandas Serie.
gibt es einen Weg mit regex
zu bekommen, was ich will!?
/(....)(..)..\.bin$/
Gruppe 1 wird das Jahr, während Gruppe 2 hat den Monat:
Sie sagen, der Ausgang ist nicht das, was Sie erwartet hatten, aber ich sehe nicht, dass Ihr Code keine Ausgabe überhaupt produziert . –
'textfile.read()' gibt den gesamten Inhalt der Datei als eine lange Zeichenfolge zurück. Die 'for line in filetext'-Schleife wiederholt jedes ** Zeichen **. –
@John-Gordon genau, ich habe die einzelnen Zeichenketten. und auch readline() gibt mir nur die erste Zeile wieder Zeichenkette – GeoCom