我正在尝试在Vim中编写命令,该命令可以删除第三行中的第9个和第11个符号。我做了这个3s/.{9,11}//
,但它不起作用。如果您能提出建议,我们将不胜感激。下面是一个例子。我有三条线
海上三米
海下三米
在vim-中需要一些帮助
所以我想删除第三行中的第9个符号;e";单词中的字母";一些";第11个符号是字母";h〃;在单词"中;帮助";。
仅适用于第三行:
:3norm! 9|x10|x
或
:norm! 3G9|x10|x
应用于整个缓冲区:
:%norm! 9|x10|x
将注释移动到答案
对于Vim,许多正则表达式特殊项都需要反斜杠转义。%c是列匹配操作。因此
:3s/%9c.//
将不使用任何内容替换位置9处的"任意字符"。您也可以连接替换,但每个表达式之间的情况都会发生变化。在这种情况下,删除第9列后,11(帮助中的"h")实际上位于第10位。
:3s/%9c.//|s/%10c.//