vim--查找、替换中的模式和正则表达式的关系
vim中的四种pattern
PS:
{only Vim supports \m, \M, \v and \V}
建议始终将 'magic' 选项保持在缺省值 - 'magic'。这可以避免移植性的麻烦。要使模式不受该选项值的影响,在模式前面加上 "\m" 或 "\M".
pattern和正则之间的关系
1. \v模式 (v小写)
如在vim中查找字符$,如果使用\v模式,则写作:
:/\v\$
而不是:
:/\v$
即在\v模式下, $ .(句点) * ( { 等都被看作是正则表达式中的特殊字符,要匹配本身,需要加反斜杠\。
2. \m模式
如果在vimrc等配置文件中设置了set matic则默认查找替换等时采用此模式。
如果在vim中查找字符{,如果使用\m模式,则写作:
:/\m{
但是,若在\v模式下,则写作:
:/\m\{
建议:为了和正则匹配,建议用\v(v小写)模式!
PS:替换中,[range]/pattern/string/[c,g,e,i]
string不存在模式和正则的问题,sting所见即所得。