1

私のbashスクリプトでは、正規表現を使用して変数割り当ての文字列を照合します。次に例を示します。

  1. 変数=値
  2. var=値;
  3. Var = Value
  4. Var=値;
  5. バリューアット

私が開発した正規表現:\s*${varName}\s*\={0,1}\s*.*\s*;{0,1}

この正規表現は、上記のすべてのインスタンスに一致する可能性がありますが、 VarValueである私が望まない別のインスタンスにも一致する可能性があります

正規表現をVarValueインスタンスと一致させないようにする方法を考えることはできません。

4

2 に答える 2

2

\s*{varName}(?:\s*=\s*|\s+)(\w+)

仕事にとって非常に複雑に見えたので、正規表現を変更しませんでしたが、これは上記のすべてのケースに一致しますが、一致しませんVarValue。データはグループ1になります。

ここで正規表現を試してください

于 2012-06-15T20:51:43.507 に答える
2

あなたのものを変更する:

\s*${varName}(\s?[\s\=]\s?).+\s*;{0,1}
于 2012-06-15T20:52:25.120 に答える