occurrences - vim: ¿cómo buscar/reemplazar caracteres especiales?
vim replace inside visual block (2)
Después de copiar y pegar de wikipedia a vim, obtengo esto:
1 A
2
3 [+] Métier agricole<200e> – 44 P • 2 C
4 [×] Métier de l''ameublement<200e> – 10 P
5 [×] Métier de l''animation<200e> – 5 P
6 [+] Métier en rapport avec l''art<200e> – 11 P • 4 C
7 [×] Métier en rapport avec l''automobile<200e> – 10 P
8 [×] Métier de l''aéronautique<200e> – 15 P
El problema es que <200e>
es solo un char.
Me gustaría saber cómo ponerlo en una búsqueda / reemplazo (a través de /
o :
.
Compruebe la ayuda para /%u
:
//%d //%x //%o //%u //%U E678 /%d123 Matches the character specified with a decimal number. Must be followed by a non-digit. /%o40 Matches the character specified with an octal number up to 0377. Numbers below 040 must be followed by a non-octal digit or a non-digit. /%x2a Matches the character specified with up to two hexadecimal characters. /%u20AC Matches the character specified with up to four hexadecimal characters. /%U1234abcd Matches the character specified with up to eight hexadecimal characters.
Estas son secuencias que puedes usar. Parece que tiene dos bytes, por lo que /%u200e
debe coincidir con él. De todos modos, es bastante extraño. 20 en UTF-8 / ASCII es el carácter de espacio, y 0e es ^ N. Verifica tu configuración de codificación.
Si desea seleccionar rápidamente este personaje extraño en todas partes y reemplazarlo / deshacerse de él, podría:
- aislar uno de los caracteres extraños agregando un espacio antes y después de él, por lo que se convierte en una "palabra"
- use el comando * para buscar la palabra debajo del cursor. Si ha
set hlsearch
, debería ver todas las ocurrencias del carácter extraño resaltado. - reemplace el último elemento buscado por otra cosa, globalmente
:%s//something else/