Quote:
Originally Posted by mTX17
Konkret habe ich es mit Archivnamen mit dem immer gleichen Namensmuster zu tun: AB_1234. Buchstaben und Zahlen ändern sich, der Unterstrich ist fast immer vorhanden, selten ist er mal durch ein Leerzeichen ersetzt.
Mein RegExp-Ausdruck sieht bislang folgendermaßen aus:
([A-Z])(_)(\d)(\d)(\d)(\d)
|
[A-Z](_|\s)\d{4} reicht. //Edit: Leerzeichen statt Unterstrich berücksichtigt.
Edit2: es muss [A-Z][A-Z](_|\s)\d{4} oder besser noch [A-Z]{2}(_|\s)\d{4} heißen, denn sonst werden auch Namensmuster mit einem Buchstaben erschlagen. Und wenn der Name tatsächlich nur obigen Namensmuster entspricht, es davor und dahinter nichts mehr gibt (auch keine Dateierweiterung), dann ist sogar ^[A-Z]{2}(_|\s)\d{4}$ sinnvoll. Mit Dateierweiterung ^[A-Z]{2}(_|\s)\d{4}\.\w{1,4}$ //Dateierweiterung mit 1 bis 4 Zeichen, bei Bedarf anpassen.
Quote:
Originally Posted by mTX17
Jetzt möchte ich den Ausdruck noch etwas erweitern. Ich suche nach einer Möglichkeit ein bestimmtes Namensmuster (YZ_5678) zu definieren, welches den Inhalt des Archivs automatisch in einen Pfad/Paketnamenordner (<jd:Paketname>) extrahiert. Die beiden Buchstaben sind immer gleich, der Unterstrich fehlt oftmals und die Ziffern ändern sich auch hier.
|
Ungetestet:
Bedingung Dateiname enthält: (YZ_?\d{4})
führe aus: verschieben ...\<jd:orgfilename:1>
Bemerkung: Hier sind die Klammern wichtig und nötig.