我可以让vim接受\ b而不仅仅是\<和\>?

时间:2015-10-12 12:36:15

标签: regex vim conventions

我刚看过这个:

In Vim, how do you search for a word boundary character, like the \b in regexp?

我想知道 - 不管怎么说,我也不能让vim认出\b吗?

1 个答案:

答案 0 :(得分:6)

由于Vim的正则表达式将\b视为退格符,并且没有机会重新定义这个速记结构,所以只能使用PCRE正则表达式引擎,它可以按照描述的方式与Vim一起使用在Perl compatible regular expressions Vim Tips Wiki。

这是该页面的描述:

  
      
  1. :ver核实编译了+perl+perl/dyn

  2.   
  3. 如有必要,请安装Perl。在Windows上,ActivePerl是标准的,但如果您不需要任何其他perl模块,任何无依赖性的perl58.dll都可以使用。如果您不想完全安装perl,请将Strawberry Perl 5.8.x中的perl58.dll复制到文件夹vim.exe中,并且以下命令可以正常运行。

  4.   
  5. 输入:perldo s/searchme/replaceme/g

  6.         

    注意:+perl/dyn似乎没有必要。

或者如果编译Ruby,也可以使用Ruby的正则表达式将\b识别为单词边界:

  

或者如果您编译了ruby(在+ruby输出中查找:ver

     

相当于s/pattern/replacement/g

     

:rubydo gsub /pattern/,'replacement'