regex - VIM - 如何粘贴没有特殊字符的搜索寄存器?

标签 regex search vim

在插入模式下,Ctrlr/(参见 :h "/ )将粘贴搜索寄存器的内容。但是,如果您搜索带有 * 的单词并粘贴搜索寄存器,它将放入特殊的单词边界字符 \<\> 。或者,如果幸运的话,您可能会得到 ' \Vsearch 。我认为这很愚蠢,但我确信 VIM 有其让我的生活变得更加困难的原因。如果没有特殊的 vim 魔术字符,我将如何获取搜索寄存器的内容?

最佳答案

搜索寄存器可能不包含(简单/foo搜索)、很少(\<cword\>从*命令搜索)或很多(^\%(foo\|bar\)\w\+!\?)“特殊字符”。对于前两个,通常只有一个匹配,对于最后一个,可能有多个匹配。

最初我使用了一个过滤掉特殊正则表达式原子的映射,但后来我编写了一个更通用的 PatternComplete plugin (刚刚发布),它提供插入模式和命令行映射来插入匹配项。它还允许您输入正则表达式,然后插入所有匹配项。

关于regex - VIM - 如何粘贴没有特殊字符的搜索寄存器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12668484/

相关文章:

javascript正则表达式匹配3个数字和3个字母

string - 给定一个搜索词列表,我如何知道我的字符串包含哪些搜索词?

c# - 根据字符串值在选项卡控件中搜索特定选项卡项

VIM 在按回车键时向换行符添加一个字符

vim - 为什么奇怪的字符($p)会出现在 vim 中每个文件的开头?

java - 正则表达式在 Ruby 中匹配,但在 Java 中不匹配?

php - 正则表达式匹配任何字符串,无论是否为 Unicode?

mysql - 网站中的搜索功能?

Vim - 检查缓冲区是否在多个窗口中打开

正则表达式可选前瞻