Matthias: Minuszeichen in Regulärem Ausdruck escapen

Beitrag lesen

Hallo zusammen,

kann mir jemand sagen, wie ich innerhalb eines Regulären Ausdrucks ein Minuszeichen (-) escape?

Ich habe folgenden Ausdruck und leider auch nicht viel Ahnung:
ereg_replace ("^(.*)(/)([A-Z|a-z|0-9|-|_]+)(/)$", "\3", $VAR)
Wobei das - nicht als Zeichen interpretiert wird, weil es als Sonderzeichen einen Bereich definiert, z.B. [A-Z].

Wenn ich jetzt aber den Backslah als Escape-Zeichen nutze, rüht sich immer noch nichts:
ereg_replace ("^(.*)(/)([A-Z|a-z|0-9|-|_]+)(/)$", "\3", $VAR)
passt nicht auf "Zeichen/Zeichen01-Zeichen02/". Mit einem Punkt ([A-Z|a-z|0-9|.|_]+) funktioniert es allerdings genauso wie gewünscht.

Wie wird ein Minus in einem Regulären Ausdruck auch als ein solches interpretiert?

Danke,
Matthias