vim 不查找和替换明显存在的简单短语

Posted

技术标签:

【中文标题】vim 不查找和替换明显存在的简单短语【英文标题】:vim does not find and replace simple phrase that is clearly present 【发布时间】:2011-07-14 10:34:04 【问题描述】:

我有一个简单的 vim 问题,Google 无法帮助我解决。任何想法表示赞赏。

我进行以下搜索和替换:

:s/numnodes/numnodes1/g

在包含以下文本的文件上:

numprocs=0  
numnodes=0

我明白了

E486: Pattern not found

指示我开始输入的绿色方块的位置明显位于图案上方。我尝试搜索其他不涉及正则表达式的短语,这些短语也存在,但也失败了。一个简单的 /numnodes 按预期突出匹配。有谁知道vim可能是什么问题?

【问题讨论】:

【参考方案1】:

试试这个:

:%s/numnodes/numnodes1/g

【讨论】:

Ack,'s'前面的数字是行号,'%'表示'所有行'AFAIK。 它是一个行规范。您也可以使用(而不是 %).,$ 将当前行替换为 eof,例如 作为旁注,如果您从可视模式中选择,您可以使用 : 并且它会自动填充该区域的行号内容,以便您可以在一个区域内进行替换。 我一直在使用 :s/foo/bar/g。这是我第一次听说这个 %。 @alternative 你是一个救生员,它就像一个魅力,应该被视为一个答案。【参考方案2】:

试试:%s/searchphrase/replacephase/g

没有% 符号,Vim 只匹配和替换当前行。

【讨论】:

以上是关于vim 不查找和替换明显存在的简单短语的主要内容,如果未能解决你的问题,请参考以下文章

Vim中的查找替换

vim编辑器,如何能够简单描述替换成某相同字符\N次的要求?

Vim查找替换及正则表达式的使用

关于在vim中的查找和替换

关于在vim中的查找和替换

vim 简单操作