[X] Regex-Prüfung fehlerhaft?


#1

Hallo zuammen,

im Dateinamen wollte ich gerne dem Bindestrich nach der Klammerschließung ein zusätzliches Leerzeichen gönnen.

Hier der Dateiname:
"04 - BWV 77 Du sollt Gott, deinen Herren, lieben - Recitativo (Tenore)- Gib mir dabei, mein Gott!.mp3"

folgende RegEx:, die berücksichtigt, dass auch es nicht immer nur eine geschlossene Klammer, sondern auch ein Buchstabe sein kann.

Suche: (.(w{1}|)){1})(- )(.)
Ersetze: $1 - $3

tja, und dann kommt der Fehler: unmatched ( or (
ist ja auch klar, wenn nur die Gesamtanzahl an öffnenden und schließenden Klammern berücksichtigt wird.

und es besteht die Möglichkeit, dass ich die RegEx nicht richtig verstehe :astonished:

Gruß und gute Nacht
Und: danke für das Programm. Habe es heute installiert und ich bin begeistert! Es wird sicherlich mein Standardtool für die Tags sein!


#2

Dein RegEx scheint fehlerhaft zu sein...

Du öffnest eine Klammer hier: (.*
Dann schließt du sie hier: |))
Wofür ist dann die: {1})

(.*\(w{1}|\)){1})(- )(.*)

Edit: Wieso machst du das nicht über eine "normale" Ersetzen Aktion, die ")-" durch ") -" ersetzt?


#3

Der reguläre Ausdruck ist wirklich fehlerhaft. Bei der Syntaxprüfung werden übrigens nicht nur einfach Klammern gezählt, sondern der komplette Ausdruck ausgewertet.

Viele Grüße,
~ Florian