如何搜索纯文本而不是正则表达式?

时间:2015-05-06 04:18:39

标签: vim

例如,我想要删除下一个d/</p> 标记。做

</p>

由于<?php namespace AppWorld\Controls; use AppWorld\FrostHeart; class landingController extends baseController { public function index() { $data['foo'] = "Foo"; $data['bar'] = "Bar"; $this->View->show('landingpage', $data, $showTemplate = 0); } } 被视为正则表达式,因此无法工作。我能以某种方式指定纯文本搜索模式吗?

2 个答案:

答案 0 :(得分:8)

对于文字搜索,有两件事需要更改:

  • 搜索分隔符(此处为/)必须使用反斜杠(d/<\/p>)进行转义。如果这是:substitute命令中的模式,您也可以使用不同的分隔符(:s#</p>##),但对于/搜索命令,您必须将其转义。
  • 正则表达式中有许多具有特殊含义的字符。而不是记住并逃避它们,通过\V将Vim的正则表达式解析为非常无害模式更容易;那么,只有反斜杠本身需要转义。您的示例模式不会受此影响,但它与.*等字符相关。

答案 1 :(得分:2)

使用反斜杠转义斜杠:d/<\/p>,虽然我不确定这是否可行,具体取决于文件的格式。您可能需要执行:.,/<\/p>/d形式的更多内容。