Domanda

Voglio fare quanto segue con le espressioni regolari ma non sono sicuro di come farlo. Voglio che corrisponda a uno due quando uno due è l'inizio della riga a meno che la stringa non contenga tre ovunque dopo uno due .

È stato utile?

Soluzione

Hai bisogno di una affermazione negativa per lo sguardo - qualcosa in questo modo:

/^one two(?!.*three)/m

Ecco un tutorial su asserzioni lookahead / lookbehind

Nota: ho aggiunto il modificatore 'm' in modo che ^ corrisponda all'inizio di una riga anziché all'inizio dell'intera stringa.

Altri suggerimenti

^one two(?!.*three)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top