von bst » Do, 02.02.2012 10:44
Hi,
^ = Zeilenanfang
[^-] = ein beliebiges Zeichen mit Ausnahme eines Minus
* = 0 oder mehrmals das Vorherige, gierig
[^-]*-[^-]* = eine beliebige Zeichenkette die exakt ein Minus enthält, gierig
() klammert das als Submatch um es nachher beim Ersetzen benutzen zu können
- = das Zeichen Minus
.* = beliebig viele Zeichen
$ = Das Zeilenende
Der Ausdruck passt also auf jede beliebige Zeichenkette die mindestens 2 Minuszeichen enthält und speichert alles bis exklusive des 2. Minus-Zeichen im Submatch.
Wenn nach dem 2. Minus nur exakt zwei Zeichen stehen dürfen nimm:
HTH, Bernd
Hi,
[code]^([^-]*-[^-]*)-.*$[/code]
^ = Zeilenanfang
[^-] = ein beliebiges Zeichen mit Ausnahme eines Minus
* = 0 oder mehrmals das Vorherige, gierig
[^-]*-[^-]* = eine beliebige Zeichenkette die exakt ein Minus enthält, gierig
() klammert das als Submatch um es nachher beim Ersetzen benutzen zu können
- = das Zeichen Minus
.* = beliebig viele Zeichen
$ = Das Zeilenende
Der Ausdruck passt also auf jede beliebige Zeichenkette die mindestens 2 Minuszeichen enthält und speichert alles bis exklusive des 2. Minus-Zeichen im Submatch.
Wenn nach dem 2. Minus nur exakt zwei Zeichen stehen dürfen nimm:
[code]^([^-]*-[^-]*)-..$[/code]
HTH, Bernd