我想知道如何让Vim查找下一个变量及其出现位置。假设变量名只是'n',那么/n
会返回该字母的所有出现位置,这并不总是特别有帮助。我想知道是否有一些命令/按键可以解决这个问题,虽然我可以创建正则表达式来解决这个问题,但我还是想知道是否有更简单的方法;由于我的所有谷歌搜索都没有结果,所以我决定在这里发问。
非常感谢您的帮助!
我想知道如何让Vim查找下一个变量及其出现位置。假设变量名只是'n',那么/n
会返回该字母的所有出现位置,这并不总是特别有帮助。我想知道是否有一些命令/按键可以解决这个问题,虽然我可以创建正则表达式来解决这个问题,但我还是想知道是否有更简单的方法;由于我的所有谷歌搜索都没有结果,所以我决定在这里发问。
非常感谢您的帮助!
如果你的光标在所问的变量上,你可以按下*
来搜索下一个出现的变量,或者按下#
来搜索前一个。
这相当于输入:
/\<n\>
(\<
匹配单词的开头,\>
匹配单词的结尾)。唯一的区别(由于我不确定的原因)是*
和#
不考虑'smartcase'
选项。
参见:
:help *
:help /\<
:help pattern
。 - Benoitchar str[]="test"; int s = 5; printf("%s\n", str);
那么格式说明符中的 's' 也会被匹配。我敢肯定有一种方法可以做到这一点,而不需要任何外部工具,但我无论如何都想不起来是什么,或者我是否把它和其他东西混淆了,但这是一个很好的提醒关于单词边界。 - Pryftan在命令模式下,如果您按下n
键,它将给出您搜索的下一个匹配项。
更多细节:
/
将开始向前搜索?
将开始向后搜索n
将会在您搜索的方向上给出下一个结果N
将会在您搜索的方向上给出上一个结果N
吧?n
是用于前一个匹配。 - Chris MaesN
是用于前一个,n
是用于下一个(因此你混淆了它们)。干杯。 - Pryftan