Frage zu einem regulären Ausduck
Verfasst: Dienstag 5. August 2008, 14:26
Hi,
ich versuche gerade mit Hilfe eines Scriptes doppelte Dateien herauszufiltern. Leider klappt das nicht so ganz.
Hiermal die Dateistruktur vom aktuellen Verzeichniss:
Hier mein Code:
Mein Ergebniss:
Meine Frage ist nun, warum er die test1(1).txt nicht herausfiltert, obwohl der reguläre Ausdruck ja darauf passen müsste?
Gruss Tompee
ich versuche gerade mit Hilfe eines Scriptes doppelte Dateien herauszufiltern. Leider klappt das nicht so ganz.
Hiermal die Dateistruktur vom aktuellen Verzeichniss:
Code: Alles auswählen
Verzeichnis von C:\Users\Tompee\Desktop\test
05.08.2008 15:11 <DIR> .
05.08.2008 15:11 <DIR> ..
05.08.2008 14:12 <DIR> BlaBla
05.08.2008 15:11 504 find.py
05.08.2008 14:13 2 test(2).txt
05.08.2008 14:12 1 test1(1).txt
05.08.2008 14:10 0 test1.txt
05.08.2008 14:11 0 test2.txt
05.08.2008 14:13 1 test3(1).txt
05.08.2008 14:11 0 test3.txt
7 Datei(en), 508 Bytes
3 Verzeichnis(se), 141.304.700.928 Bytes frei
Code: Alles auswählen
#!/usr/bin/env python
import re
from os import listdir, getcwd
from os.path import isfile
data = listdir(getcwd())
for element in data:
if not isfile(element):
data.remove(element)
pattern = re.compile('.+\(\d+\)\.txt')
for element in data:
if pattern.match(element):
data.remove(element)
print data
Code: Alles auswählen
['find.py', 'test1(1).txt', 'test1.txt', 'test2.txt', 'test3.txt']
Gruss Tompee