0

最初の 2 つの特定のフィールド (Perl で記述された変数文字列) に一致する正規表現を探しています。ファイルでは、コメントのない行#は任意の文字で始まり、長さが不特定で、その後に空白が続き、別の不特定の長さの文字列に空白が続きます: name info data1 data2 data3.

次は 2 番目のフィールドのみを照合する場合に機能しますが、最初の 2 つのフィールドを正確に一致させたいと考えてい/^[^#].*\s$INFO\s/ます$INFO="info"。上記のバリエーションを試してみましたが、役に立ちませんでした。私の最初の試みはこれでした:上記の記録の/^[^#]$NAME\s$INFO\s/場合、これは私には論理的に思えました。$NAME="name"

4

2 に答える 2

1

私は正規表現の専門家ではありませんが、これでうまくいく可能性があります(質問の正確な詳細についても明確ではないため、いくつかの仮定を立てました):

'$NAME=name #$INFO=info $DATA=data1 data2 data3'.replace(/#[\S]+/g,'').match(/\$[\S]+/g);

これは配列を返します。最初の 2 つの要素は「フィールド」です。つまり、[0]='$NAME=name' AND [1]='$DATA=data1' です。

それがまったく役立つことを願っています。そして、私の正規表現について神々に謝罪します。

于 2013-03-31T15:20:47.830 に答える