3
Vim正则表达式中的'\ zs'和'\ @ <='原子有什么区别?
这是我从文档中得到的结果:\zs匹配前面的正则表达式后\@<=“启动突出显示的部分”,而匹配前面的原子后“启动突出显示的部分” 。但是我不完全理解这一点的微妙之处,所以谁能解释他们在深度上有何不同? 这就是让我感到好奇的原因:如果我跑步 /\_s\zsnnoremap 即选择nnoremap由空格或一个开始的行之前(即,从前述线路换行,因此\_之前的s),然后运行gn到进入的视觉模式和直观地选择下一个匹配,由于某种原因,仅在第一列(即第一n中nnoremap)选择-尽管事实上,整个nnoremap字凸显与:hlsearch开启。 但是,如果我改为运行搜索 /\_s\@<=nnoremap 然后尝试gn,nnoremap正确选择了整个。这可能是怎么回事?我(敢说)发现了一些晦涩的错误吗?