Ho alcune errate corrispondenze if e fi in uno script. Mi piacerebbe spogliare tutto tranne il if's's e il fi's. Solo così posso vedere la struttura. Perché sto lavorando così duramente con un editor così potente? Mi serve un operatore BIGFATOR per regexp o qualche epifania che mi è sfuggito ... Non mi interessa la pontificazione sulle espressioni regolari, solo qualcosa di pratico in VIM7.2.Esiste un comando Verg regexp O corretto? Qual è il modo migliore per trovare incompatibili se altro?
: g/[^ \ t] se [/ print
stamperà i se
: g/[^ \ t] fi/stampa
stamperà il fi
Quello che voglio fare è o le condizioni
: g/[^ \ t] fi BIGFATOROPERATOR [^ \ t] fi/stampa
Ho avuto successo nel seguente modo ... ma sento che sto lavorando troppo!
: chiamare TripMatch ('[^ \ t] * se [', 'altro', 'fi [\ t $]')
funzione! TripMatch (str1, str2, str3)
let var1 = a: str1
let var2 = a: str2
let VAR3 = a: str3
lasciare max = linea ("$")
sia n = 1
per n in range (1, max)
let curren TLIN = getline (n)
if currentline =~? var1 echo n "1:" currentline else if currentline =~? var2 echo n "2:" currentline else if currentline =~? var3 echo n "3:" currentline else let foo = "do nothing" endif endif endif
endfor
endfunction
Stai evitando il | personaggio in questo? – ojblass
Nella mia difesa c'è un sacco di rumore alla ricerca di queste cose ... e ho imparato molto nel processo. – ojblass