如何在 VIM 中使用通配符进行搜索
How to search using wildcard in VIM
使用 VIM 中的标准搜索功能 (/),是否可以使用通配符(匹配 0 个或更多字符)进行搜索?
示例:
我有一个数组,我想找到分配数组索引的任何位置。
array[0] = 1;
array[i] = 1;
array[index]=1;
等
我正在寻找与
类似的东西
/array*=
如果可能的话。
我认为您误解了通配符的工作原理。它不匹配 0 个或多个字符,它匹配前面原子 的 0 个或多个 ,在本例中为 y
。所以搜索
/array*=
将匹配以下任何一项:
arra=
array=
arrayyyyyyyy=
如果要匹配 0 个或多个任意字符,请使用 'dot' 原子,它将匹配换行符以外的任何字符。
/array.*=
如果你想要更强大的东西,我会推荐:
/array\s*\[[^\]]\+\]\s*=
这是 "array" 后跟 0 个或多个空格,然后是括号中包含的任何内容,后跟 0 个或多个空格,然后是 "equals" 符号。
尝试
array.*
.* 使它有意义或 nothing.in array* , * 转到 y .
使用 VIM 中的标准搜索功能 (/),是否可以使用通配符(匹配 0 个或更多字符)进行搜索?
示例:
我有一个数组,我想找到分配数组索引的任何位置。
array[0] = 1;
array[i] = 1;
array[index]=1;
等
我正在寻找与
类似的东西/array*=
如果可能的话。
我认为您误解了通配符的工作原理。它不匹配 0 个或多个字符,它匹配前面原子 的 0 个或多个 ,在本例中为 y
。所以搜索
/array*=
将匹配以下任何一项:
arra=
array=
arrayyyyyyyy=
如果要匹配 0 个或多个任意字符,请使用 'dot' 原子,它将匹配换行符以外的任何字符。
/array.*=
如果你想要更强大的东西,我会推荐:
/array\s*\[[^\]]\+\]\s*=
这是 "array" 后跟 0 个或多个空格,然后是括号中包含的任何内容,后跟 0 个或多个空格,然后是 "equals" 符号。
尝试
array.*
.* 使它有意义或 nothing.in array* , * 转到 y .