Gunnar Bittersmann: Regex auf Ausgabe von ls -l

Beitrag lesen

Hello out there!

Ich habe folgenden Regex probiert, der aber nicht passt:

/*2007-[01-12]-[01-31] [00-23]:[00-59] /

Was soll der '*'? Der ist nicht der Joker bei regulären Ausdrücken, sondern '.'.

Du kannst nur Zeichenbereiche angeben; keine Zahlenbereiche. Also '2007-' gefolgt von zwei Ziffern gefolgt von '-' gefolgt von zwei Ziffern ...

.*2007-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}

(Für '[0-9]' kannst du auch '\d' schreiben, wenn dein Editor diese Syntax versteht.)

Eine genauere Prüfung, welche Ziffern dort stehen, ist gar nicht notwendig, du willst ja das Datum nicht auf Gültigkeit prüfen. (Ginge auch, wäre aber unsinnig. [http://forum.de.selfhtml.org/archiv/2006/3/t126272/#m814810 ff.])

Aber wozu hier ein regulärer Ausdruck? Die Anzahl der zu löschenden Zeichen sollte doch konstant und bekannt sein.

Und natürlich, was [steckl] sagte.

See ya up the road,
Gunnar

--
„Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)