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

时间:2019-02-15 10:33:16

标签: vim

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

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

谢谢!

1 个答案:

答案 0 :(得分:1)

要仅突出显示一行中的第N个模式,只需将其锚定到行的开头(使用^):

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

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

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