【问题标题】:Searching word in vim?在vim中搜索单词?
【发布时间】:2009-01-19 19:49:57
【问题描述】:

我可以用/word 在vim 中搜索单词。如何只搜索word,不搜索word1 和word2?

【问题讨论】:

标签: vim


【解决方案1】:

像这样:

/\<word\>

\&lt; 表示单词的开头,\&gt; 表示单词的结尾,

添加@Roe 的评论:
VIM 为此提供了一个快捷方式。如果您在屏幕上已经有 word 并且想要查找它的其他实例,您可以将光标放在该单词上并按'*' 在文件中向前搜索或按'#' 向后搜索.

【讨论】:

  • 将光标放在单词上并按 *(前进)或 #(后退)是快捷方式
  • 为什么这是有益的而不是仅仅做:/word
  • @semja:假设您有一个变量“data”及其有效指示“data_valid”。如果我只想搜索 'data' 而不是 'data_valid',那么 '/data' 将无法完成这项工作。我需要告诉 vim 在哪里 stop 匹配模式。
  • 这在以下示例中失败:1word1 有关解决方案,请参阅 stackoverflow.com/a/22148017/2609994。
  • 是否有vim 配置使其搜索精确的单词而不用\&lt; 和\&lt; 字符包装搜索字符串?
【解决方案2】:
  1. vim 文件名
  2. 按 /
  3. 输入您要搜索的单词
  4. 按 Enter

【讨论】:

  • 有人可以解释为什么这可能会收到反对票吗?为我工作。
  • 因为 OP 要求专门搜索 "word"。这里发布的解决方案基本上是搜索%word%,无论是thiswordisawesome还是word56还是26word。
  • 另外,因为 OP 明确表示他们知道 / 命令。因此,这个答案根本没有帮助。
【解决方案3】:

如果您在 Ubuntu 中工作,请按照以下步骤操作:

  1. 按/ 并输入单词进行搜索
  2. 要向前搜索,请按“SHIFT”键和* 键
  3. 要向后搜索,请按“SHIFT”键和# 键

【讨论】:

  • 如何突出显示搜索到的单词?
  • @jorgesaraiva:首先,通过提出一个新问题,您可能会更快地得到答案(而不是在您提出此评论 3 个月后等待某人偶然发现此评论)。其次,您可以在 Vim 中使用 :set hls 来突出显示您的搜索结果。要关闭突出显示,请执行 :set nohls
  • 这真的只有当/word的第一个结果是word而不是word.+时才有效
  • 这对我在 AWS ubuntu 18.04 实例上不起作用。如果相关,使用 windows git-bash ssh 到 ubuntu 服务器。很奇怪。
【解决方案4】:

对于基本搜索:

  • /pattern - 向前搜索模式
  • ?pattern - 向后搜索
  • n - 重复前向搜索
  • N - 向后重复

您可能想要设置的一些变量:

  • :设置忽略大小写 - 不区分大小写
  • :set smartcase - 使用任何大写字母的用例
  • :set incsearch - 将匹配显示为搜索

【讨论】:

  • 这不是 OP 要求的。
【解决方案5】:

使用vim 进行基本搜索(在vim 打开文件后):

-在你的电脑键盘上点击ESC

-点击键盘上的正斜杠符号/

-键入您要搜索的单词或符号;例如,要搜索术语“rbmq”,请输入 /rbmq

-点击Enter

-点击n向前搜索(向文件末尾移动)和N向后搜索(向文件开头移动)

【讨论】:

    猜你喜欢
    • 2015-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多