[英]Regexp: How to match one of two exactly specified 4 digit numbers
我正在看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.
有任何想法吗?
参见VimRegex.com :
4.6变更
使用\\|
您可以将多个表达式组合成一个与其任何组成部分匹配的表达式。 将使用第一个匹配的内容。
\\(Date:\\|Subject:\\|From:\\)\\(\\s.*\\)
因此,您需要转义特殊字符:
\(1119\|1196\)
由于此处的分组适用于可以用\\0
引用的整个模式( \\ 0->整个匹配的模式 ),因此您可以放心使用
1119\|1196
搜索两个数字。
但是,如果您需要找到两个数字作为一个完整的单词,请使用\\<
/ \\>
单词边界(然后可以分组):
\<\(1119\|1196\)\>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.