web-dev-qa-db-ja.com

VIMでワイルドカードを使用して検索する方法

VIMの標準検索機能(/)を使用して、ワイルドカード(0個以上の文字に一致)を使用して検索する方法はありますか?

例:

配列があり、配列のインデックスが割り当てられている場所を見つけたい。

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

等.

私はの線に沿って何かを探しています

/array*=

可能であれば。

12
Jimmy P

ワイルドカードの仕組みを誤解していると思います。 0個以上の文字とは一致せず、0個以上と一致します前のアトムの(この場合はy)。だから検索

/array*=

次のいずれかに一致します。

arra=
array=
arrayyyyyyyy=

0個以上の任意の文字と一致させる場合は、「ドット」アトムを使用します。これは、改行以外の任意の文字と一致します。

/array.*=

より堅牢なものが必要な場合は、以下をお勧めします。

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

これは、「配列」の後に0個以上の空白が続き、括弧で囲まれたものが続き、その後に0個以上の空白が続き、「等号」記号が続きます。

15
DJMcMayhem