2013-06-03 10 views
9

Sto cercando di abbinare le linee di non seguire in ingresso NON contenente "VelSign" (usando Notepad ++):corrispondenza di una linea che non contiene una parola in Notepad ++

#MARKER VelSign 457,45 50 kmh

# MARCATORE IsBridge vero

#MARKER trafficsign 45

#MARKER TrafficLight 45 445 444 40

sto usando la seguente espressione regolare: ^#MARKER (?!.*VelSign).*$

non sembra funzionare. Che cosa sto facendo di sbagliato?

+0

Ora che è stato modificato il backslash, questo modello funziona perfettamente bene per me. –

+0

Hai provato a utilizzare "Trova tutto nel documento corrente"? – Jerry

+0

Possibile duplicato di [notepad ++ Inverse Regex replace (tutto tranne stringa)] (http://stackoverflow.com/questions/8264391/notepad-inverse-regex-replace-all-but-string) –

risposta

8

Make sure that you upgrade Notepad++ to version 6, poiché sono cambiati parecchio nel motore regex. Soprattutto le interruzioni di riga e i rimedi erano un po 'problematici nelle versioni precedenti.

+0

scusa per l'errore di battitura. La mia regex è:^# MARKER (?!. * VelSign). * $ –

+0

@MihaiGALOS che funziona per me. che cosa corrisponde per te? (o cosa non corrisponde) –

+0

Grazie per il feedback rapido. Notepad ++ dice: Impossibile trovare il testo "^ # MARKER (?!. * VelSign). * $" –

8

trasformare questo:

^#MARKER (?!.\*VelSign).*$ 

In questa:

^#MARKER (?!.*VelSign).*$ 

state fuoriuscendo l'operatore *, che fa sì che la partita di un letterale * invece di 0 o più ..

Inoltre, assicurarsi di aver controllato l'opzione espressione regolare (vedi il terzo pulsante radio):

enter image description here

+0

@MihaiGALOS Hai provato a utilizzare "Trova tutto nel documento corrente"? – Jerry

+0

Il regex era ok. Ho aggiornato a 5.9.2 prima di chiedere, sembra che v6 sia riuscito a combaciare ... :) Grazie. –

Problemi correlati