我正在查看vim中包含大量数字的大文件。我正在寻找一个在一个字段中具有数字1119的特定记录,并且我知道2个记录之后在同一个字段中有1196个数字。
我想搜索其中任何一个但都突出显示,
我试过了:
[1119|1196] which matches any of these single digits like 1.
{1119|1196} doesn't find anything (I am not sure what it looks for).
{1119,1196}
也找不到任何东西。我对此感到惊讶,因为我认为它应该寻找1119或1196,并且这些数字在文件中肯定存在很多次。
我最后还尝试将/ g用于全局,但这也无济于事。
我也试过
(1119|1196), and that did not work either.
我也试过
((1119)|(1196)) and that did not work either.
有什么想法吗?
答案 0 :(得分:3)
4.6轮换
使用\|
,您可以将多个表达式组合成一个与其任何组件匹配的表达式。匹配的第一个将被使用。
\(Date:\|Subject:\|From:\)\(\s.*\)
所以,你需要转义特殊字符:
\(1119\|1196\)
由于此处的分组应用于可以使用\0
( \ 0 - >整个匹配的模式)引用的整个模式,因此您可以安全地使用
1119\|1196
搜索这两个数字。
但是,如果您需要将两个数字作为整个单词找到,请使用\<
/ \>
字边界(然后,分组就可以了):
\<\(1119\|1196\)\>