2017-09-27 4 views
0

Ich versuche, eine Regex zu implementieren, die alle Strings enthält, die eine beliebige Anzahl von Wörtern haben, aber nicht gefolgt von a: und die Übereinstimmung ignorieren, wenn dies der Fall ist. Ich habe mich dafür entschieden, einen negativen Blick darauf zu werfen.negativer Lookahead funktioniert nicht mit Zeichenbereich

/([a-zA-Z]+)(?!:)/gm 
string: lame:joker 

da ich einen Charakter bin mit reichen sie ein Zeichen in einer Zeit passend und nur das letzte Zeichen ignoriert vor. Wie ignoriere ich das gesamte Spiel in diesem Fall?

Link zu regex101: https://regex101.com/r/DlEmC9/1

Antwort

2

Sie eine Wortgrenze Prüfung \b nach den + es erforderlich ist, um das Ende des Wortes zu bekommen.

([a-zA-Z]+\b)(?!:) 

Here's an example run.

Verwandte Themen