在 vim 中是否可以对 :substitute 和 search 使用相同的正则表达式转义规则?
In vim is it possible to use the same regex escaping rules for :substitute and search?
如果我进行如下搜索(使用魔法):/\v$[^ ]+$
我会在我的文件中找到匹配项,但是如果我用相同的搜索模式替换::%smagic/$[^ ]+$//
,我需要转义 +
.
是否可以使转义以相同的方式进行魔法搜索和魔法替代?
使用\v
代替magic
:%s/\v$[^ ]+$//
:smagic
就像 :s
打开 'magic'
,这是默认设置(不应该为了插件的可移植性而更改,如其 :help
注释)。 \v
特殊原子指定 very magic,因此额外的原子(如 \+
) 不需要前面的反斜杠。
没有相应的 :s
命令变体,但为什么不保留模式中的 \v
:
:%s/\v$[^ ]+$//
(此外,如果您之前搜索过该内容,则可以完全省略该模式::%s///
。)
如果我进行如下搜索(使用魔法):/\v$[^ ]+$
我会在我的文件中找到匹配项,但是如果我用相同的搜索模式替换::%smagic/$[^ ]+$//
,我需要转义 +
.
是否可以使转义以相同的方式进行魔法搜索和魔法替代?
使用\v
代替magic
:%s/\v$[^ ]+$//
:smagic
就像 :s
打开 'magic'
,这是默认设置(不应该为了插件的可移植性而更改,如其 :help
注释)。 \v
特殊原子指定 very magic,因此额外的原子(如 \+
) 不需要前面的反斜杠。
没有相应的 :s
命令变体,但为什么不保留模式中的 \v
:
:%s/\v$[^ ]+$//
(此外,如果您之前搜索过该内容,则可以完全省略该模式::%s///
。)