VIM中正则表达式中的=符号不起作用?

3
在Vim中,等于号(=)与正则表达式中的问号(?)是相同的,例如:

a? 相当于 a= 相当于 a出现0或1次

当你使用/v搜索时,必须转义=。我不想转义=,因为它不是标准的正则表达式字符。我能否让Vim在正则表达式搜索模式下将=视为字面值?

2个回答

5

当您启用\v时,无法执行此操作,这意味着您已经启用了very magic模式。 这会使Vim将=视为特殊字符。 除了very magic模式之外的其他模式中,它被视为文字而不是特殊字符。


1
谢谢。我总是忘记 Vim 有多糟糕。我使用 \v 进行搜索,这是在 Vim 中正确的方式™,因此当我想要使用组 ( 等时,我不必转义它们。很遗憾 Vim 有自己的正则表达式风格,没有办法避免。 - Andy Ray
2
我同意这很糟糕。Vi(m)是最早出现的,后来的语言决定不采用vim的正则表达式风格,这让人感到非常困惑。 - benjifisher

1
\v 的设计初衷就是让所有内容都变得“非常神奇”,那为什么不直接使用 \m 呢?

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接