Vim:匹配第N次出现的PATTERN并仅突出显示匹配行上的该模式

问题描述 投票:1回答:1

使用下面的正则表达式,可以匹配PATTERN的第N次出现,但是当运行它时,对于线上的每个下一个第N个匹配,突出显示继续。如何将突出显示限制为每条匹配线上的第N个图案?

/\(.\{-}\zs\(PATTERN\)\)\{N}

谢谢!

vim
1个回答
1
投票

要仅突出显示行中的第N个图案,只需锚定到行的开头(使用^):

/^\(.\{-}\zs\(PATTERN\)\)\{N}

使用\%#,您可以在光标后突出显示第N个图案(请注意,您需要切换'hlsearch':redraw以查看更新的搜索突出显示):

/\%#\(.\{-}\zs\(PATTERN\)\)\{N}
© www.soinside.com 2019 - 2024. All rights reserved.