View Single Post
  #7  
Old 04.08.2016, 17:51
oEFLKQzikCqw oEFLKQzikCqw is offline
JD Legend
 
Join Date: Mar 2012
Posts: 1,730
Default

Quote:
Originally Posted by mTX17 View Post
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 View Post
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.

Last edited by oEFLKQzikCqw; 15.11.2016 at 08:22.
Reply With Quote