Ist es möglich, ein paar Zeichen in einer Erfassungsgruppe in regulären Ausdrücken zu überspringen? Ich benutze .NET Regexes, aber das sollte keine Rolle spielen.Regelmäßiger Ausdruck zum Überspringen von Zeichen in Erfassungsgruppe
Im Grunde, was ich suche ist:
[random text] AB123 [random text]
und ich brauche 'AB123' zu erfassen, ohne den Bindestrich.
Ich weiß, dass AB 2 oder 3 Großbuchstaben und 123 ist 2 oder 3 Ziffern, aber das ist nicht der schwierige Teil. Der schwierige Teil (zumindest für mich) ist das Überspringen des Bindestrichs.
Ich denke, ich könnte beide separat erfassen und dann verketten sie in Code, aber ich wünschte, ich hätte eine elegantere, Regex-only-Lösung.
Irgendwelche Vorschläge?
in Javascript verwendet wurde, konnte man: /(AB)\-(123))/.exec("[random text] AB-123 [random Text ] "); es gibt jetzt Array zurück [1] und [2] ^^ – hanshenrik
Wie wäre es mit positivem Lookahead (? =) und positivem Lookbehind (? <=)? Grundsätzlich gilt: (? <= \ ') ([A-Z] {2} - [0-9] {3}) (? = \') Sollte funktionieren. –