【问题标题】:How to search using wildcard in VIM如何在 VIM 中使用通配符进行搜索
【发布时间】:2017-04-30 05:33:58
【问题描述】:

使用 VIM 中的标准搜索函数 (/),有没有办法使用通配符(匹配 0 个或多个字符)进行搜索?

例子:

我有一个数组,我想找到分配数组索引的任何位置。

array[0] = 1;
array[i] = 1;
array[index]=1;

等等。

我正在寻找类似

的东西
/array*=

如果可能的话。

【问题讨论】:

    标签: search vim wildcard


    【解决方案1】:

    我认为您误解了通配符的工作原理。它不匹配 0 个或多个字符,它匹配 0 个或多个 前面的原子,在本例中为 y。所以搜索

    /array*=
    

    将匹配以下任何一个:

    arra=
    array=
    arrayyyyyyyy=
    

    如果您想匹配 0 个或多个任意字符,请使用“点”原子,它将匹配除换行符以外的任何字符。

    /array.*=
    

    如果你想要更健壮的东西,我建议:

    /array\s*\[[^\]]\+\]\s*=
    

    它是“数组”后跟 0 个或多个空格,后跟括号中包含的任何内容,后跟 0 个或多个空格,后跟一个“等号”。

    【讨论】:

      【解决方案2】:

      试试

      array.*
      

      .* 使它意味着什么或什么都没有。在 array* 中,* 转到 y 。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-12
        • 2010-11-01
        • 2021-10-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多