Come posso cercare un carattere visualizzato come <85> in Vim?
Domanda
Ho un file che è stato convertito da EBCDIC a ASCII. Dove ha usato per essere nuove linee ora ci sono personaggi che appaiono come <85> (un simbolo che rappresenta un singolo carattere, non i quattro personaggi sembra essere) e l'intero file è su una sola riga. Voglio cercare per loro e li sostituirà con nuove linee di nuovo, ma non so come.
Ho provato a mettere il cursore su uno e l'utilizzo di * per cercare l'occorrenza successiva, nella speranza che possa presentarsi nella mia storia / di ricerca. Che non ha funzionato. E 'appena cercato la parola che ha seguito la <85> carattere.
Ho cercato su google in giro un po ', ma non ho visto niente ovvio.
Il mio obiettivo è quello di costruire una ricerca e sostituzione stringa del tipo:
:%s/<85>/\n/g
che attualmente mi dà:
E486: Pattern not found: <85>
Grazie!
Soluzione
questo post da una ricerca su Google. Sembra che si dovrebbe essere in grado di fare:
:%s/\%x85/\r/gc
(Omettere il c
di fare la sostituzione senza chiedere, provare con c
prima per assicurarsi che sta facendo quello che vuoi fare.)
In vim, digitando :h \%x
fornisce ulteriori dettagli. Oltre a \%x
, è possibile utilizzare \%d
, \%o
, \%u
e \%U
per decimale, ottale, fino a quattro e fino a otto caratteri esadecimali.
Altri suggerimenti
provare questo: :%s/<85>/^M/g
Nota: premere Ctrl-V e quindi M
o se non ti dispiace utilizzando un altro strumento,
awk '{gsub("<85>","\n")}1' file