字符串:
abc|c|xyz
模式:
|[^|]*
我希望这只会匹配' | xyz',但它匹配' | c | xzy'。为什么会这样?我的模式意味着"从' |'开始任何以下角色都不能成为' |'"。正确?
答案 0 :(得分:2)
Vim不匹配“| c | xzy”有两个单独的匹配,“| c”和“| xyz”。您可以通过按 n 在它们之间进行跳转来验证这一点。
看起来你只想要最后一场比赛。您可以添加“$”以确保您的模式仅匹配一行的结尾:
|[^|]*$