在 Vim 中,如果我想进行匹配“planA”或“planB”的搜索,我知道我可以这样做:
/plan[AB]
Run Code Online (Sandbox Code Playgroud)
这是有效的,因为正则表达式允许 A 或 B 作为其字符集。
但是如何指定两个完整字符串之一?例如,“planetAwesome”或“planetTerrible”?
这将匹配这两个,以及“planetAnythingHereAsLongAsItsJustLetters”:
planet\([a-zA-Z]*\)
Run Code Online (Sandbox Code Playgroud)
如何仅匹配与“planetAwesome”或“planetTerrible”完全匹配的字符串?
Gil*_*il' 47
/planet\(Awesome\|Terrible\)
Run Code Online (Sandbox Code Playgroud)
要查看相关文档,请发出:help /
并向下滚动到“模式的定义”部分。
要添加吉尔斯的答案,您可能需要在其中添加一些内容:
/\<planet\(Awesome\|Terrible\)\>
Run Code Online (Sandbox Code Playgroud)
\<
标记“单词”的开头(本质上是字母数字)
\>
标记“单词”的结尾(本质上是字母数字)