Bindestrich in Dateiname einfügen

Habe einen Dateinamen der so aussieht:

18 irgendwas interpretvorname interpretnachname titel.mp3

Ich möchte nun mit einer Aktion (Regex) nach 'irgendwas' einen Bindestrich einfügen, sofern dieser nicht schon vorhanden ist.

Das Problem ist eigentlich nur der Reguläre Ausdruck. Den Bindestrich einfügen ist kein Problem, aber ihn nur dann einzufügen, wenn er noch nicht vorhanden ist, geht einfach nicht. Ich habs so versucht:

^([0-9]+) ([a-zA-Z0-9]+) (^-)
\1 \2 -

Ihr wisst sicher was da falsch ist? Auch ohne den Backslash gehts nicht, also
^([0-9]+) ([a-zA-Z0-9]+) (^-)

Warum machts du es nicht mit Tag-Dateiname [$num(%track%,2)-]%artist%-%title%, oder haben die Songs keinen Tag?

ja könnte ich, ist aber praktischer per aktion. ich hab schon x-sachen in einer aktion, wenn auch das noch gehen würde per regex dann wärs perfekt.

Du hast [^-] gedacht aber (^-) geschrieben.

Aber eleganter geht es so:
^([0-9]+) ([a-zA-Z0-9]+) (?!-)

Eiegntlich gehört es sich ja nicht, aber ich klemme mal meine Anfrage an diesen Thread, da ich der Lösung für mein Problem mit diesem Inhalt ganz nah bin.

Auch ich möchte einen Bindestrich zwischen einer Zahl und den/ dem Wort/ Wörtern installieren, wenn noch keiner vorhanden ist. Allerdings im Feld Album.

Der Aufbau der Dateien ist eigentlich immer gleich:

01 Hans Hansen träumt - Hörbuch

Manchmal kommen auch Kommata oder doppelte Bindestrich in dem Feld vor:

01 Hans, der Hansen träumt - Hörbuch

oder

01 Hans Hansen - Der Träumer - Hörbuch

Der oben vorhandene String löst allerdings meine Aufgabe nicht. Ich habe den Aufbau geändert, aber bisher nur erreichen können, dass im Feld Album das hier steht:

  • 01 Hans Hansen träumt - Hörbuch.

Über einen kurzen Tipp oder einen Link wäre ich sehr dankbar.

Ich frage noch mal nach: du willst hinter einer Zahl, die immer am Anfang steht, einen Bindestrich einfügen?
Dann bau dir eine Aktion vom Typ "Ersetzen mit regulärem Ausdruck" für ALBUM.
Suchstring: ^(\d\d)(.*)
Ersetzen-String: $1 -$2

Ich hoffe, dass ich dieses Mal alle $ und % drin habe :wink:

Ich hoffe, dir geht es wieder gut!

Vielen, vielen Dank. Das geht wunderbar. Bei dreistelligen Ziffern am Anfang baue ich mir eine zweite Aktion.

Vielen Dank nochmal und ein weiterhin gelungenes Restwochenende an Dich!

Das müsste für jede führende Zahl mit
Suchstring ^(\d+) (.*)
Ersetzen: $1 - $2

gehen.

Perfekt! Die Aktion findet sich jetzt schon in meiner Verwendung!

Vielen Dank an Dich, Ohrenkino! :smiley: