匹配vim中字符串中的最后一个“

时间:2013-06-01 17:03:35

标签: regex vim

在VIM中搜索时,我想找到以下内容:

''

我在做的是:

/''

然而,这会将我的光标放在第一个'

我如何搜索,但只匹配

的最后一次出现
'

我正在尝试这样的事情:

/'$(?<=')/g

感谢。

3 个答案:

答案 0 :(得分:8)

如果您想将光标放在搜索模式的末尾,可以在/patter/offset

中添加偏移量

e.g。尝试:

/''/e<Enter>

如果您想将光标放在匹配结尾旁边的字符处,请执行以下操作:

/''/e+1<Enter>

答案 1 :(得分:1)

你可以使用vim的负面前瞻(在我看来)不寻常的语法

'\(.*'\)\@!

这将匹配在该行的任何位置没有其他'的{​​{1}}

答案 2 :(得分:1)

另一个选项:\zs更改匹配开始的位置。所以你可以/'\zs'做你想做的事。顺便说一下,\ze是设置比赛结束的对手。