替换VIM中的Unicode字符?


16

我从Windows计算机上获得了一些日志,其中包含的多个实例<200e>,我知道这是一个Unicode字符,但是如何使用s命令删除它?

我不知道如何在command“行”中输入该内容。

编辑

这是一个unicode字符,这意味着我可以通过x按一次键来删除..不是6个字符<200e>...


Answers:


23

来自:help i_CTRL-V_digit

使用CTRL-V可以直接输入字符的十进制,八进制或十六进制值。这样,您可以输入除换行符(值10)以外的任何字符。有五种输入字符值的方法:

first char  mode         max nr of chars   max value
( none )    decimal        3               255
o or O      octal          3               377      (255)
x or X      hexadecimal    2               ff       (255)
u           hexadecimal    4               ffff     (65535)
U           hexadecimal    8               7fffffff (2147483647)

这意味着您可以<Ctrl-v>u200e用来输入字符,并像往常一样在替代命令或其他地方使用它。

:%s/<Ctrl-v>u200e//g

7
还有一种特定于正则表达式的方式来表示扩展字符,请参见:help /\%u(这使您无需使用Cv即可键入,即很容易“粘贴”):%s/\%u200e//g
Chris Johnsen 2012年

我注意到,如果我在\ v前面使用\ v进行扩展的正则表达式,则无法使用\%u200e这样的符号。很
高兴
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.