我在ag.vim插件中使用Silver Search。有没有人知道如何使用正则表达式与:ag命令进行搜索?
答案 0 :(得分:5)
Ag.vim需要一些额外的转义(除了ag
所需的内容)因为vim,如https://github.com/rking/ag.vim#gotchas中所述。
例如,如果您有正则表达式,则需要在Ag.vim中键入,如下所示:
\.
位于Ag.vim \\.
\(
在Ag.vim中停留\(
[
和]
位于Ag.vim \[
和\]
\s
在Ag.vim中成为\\\s
|
(选项分隔符,例如(a|b|c)
中的选项分隔符位于Ag.vim \|
\.\s+async[^h]
位于Ag.vim \\.\\\s\+async\[^h\]
因此,要搜索\.\s+async[^h]
,请键入:Ag \\.\\\s\+async\[^h\]
。这是一个有点膨胀的反斜杠,但目前我知道获得结果的唯一方法。
我希望能让你知道如何逃避你的正则表达式。对我来说,这需要一些逃避的实验。
答案 1 :(得分:0)
ag
使用与grep
相同的语法:
$ ag .epart. finds 'departure' and 'departed'
$ ag ^The finds all lines starting with 'The'
$ ag s{2} finds 'Odessa'
我不熟悉那个ag.vim
插件,但我想以下内容应该会找到以Oz
结尾的所有行:
:Ag Oz$
有关血腥语法的详细信息,请参阅$man grep
。