You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Vim中高亮一行中的前10个单词(或任意数量单词)

在Vim中高亮一行的前N个单词(以10个为例)

要实现高亮一行的前10个单词,你可以基于现有正则扩展,核心是通过重复匹配单元覆盖多个单词。

匹配前10个单词的正则表达式:

/^\s*\(\w\+\s*\)\{10\}

正则拆解:

  • ^\s*:匹配行首任意空白字符(空格、制表符都算),避免行首空白干扰单词计数
  • \(\w\+\s*\):作为重复单元,匹配一个完整单词(\w\+)加上单词后的任意空白(\s*,包含单词间空格或行尾空白)
  • \{10\}:指定前面的重复单元执行10次,精准匹配前10个单词及它们之间的空白

自定义数量调整

如果要高亮任意数量的单词,把\{10\}里的数字改成目标N即可:

  • 高亮前5个单词:/^\s*\(\w\+\s*\)\{5\}
  • 高亮前3个单词:/^\s*\(\w\+\s*\)\{3\}

实际应用高亮

在Vim中用:match命令直接应用规则,比如用默认的Search高亮组(搜索时的高亮样式):

:match Search /^\s*\(\w\+\s*\)\{10\}

取消高亮执行:match clear即可。

内容的提问来源于stack exchange,提问作者ThG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 01:47:26