0

ant で以下の文字列の正規表現を記述する方法を教えてください。typeSplitFirstPart というプロパティがあります。プロパティ typeSplitFirstPart の後に、Product_A、Product_PD、または Product_CD のいずれかの値をいくつか挿入したいと考えています (以下を参照)。

CSDT_FLAG_PRODUCT_FF_FWUIDS=Product_A:*;Product_PD:*;Product_CD:*

現在、私はこれを持っていますが、機能していません。

   <replaceregexp file="x" flags="s" match="([^\.]*)\$\{typeSplitFirstPart:\*?\}([^\.]*)" replace="$HELLOEVERYONE\2"/>
4

1 に答える 1

1

これらは、* がセミコロン ( [^;])以外の任意の文字であると仮定した純粋な正規表現パターンです。

最初の部分は必須で、少なくとも 1 つの製品が必須であり、製品を空にすることはできません:

^([A-Z_]+)=(?:(Product_[A-Z]+):([^;]+);?)+

最初の部分は必須です。製品はオプションですが、空ではありません:

^([A-Z_]+)=(?:(Product_[A-Z]+):([^;]+);?)*

最初の部分は必須で、製品はオプションであり、空にすることができます:

^([A-Z_]+)=(?:(Product_[A-Z]+):([^;]*);?)*

で始まるグループ?:は、最適化のために何も返さないことに注意してください。

于 2013-01-15T12:16:50.863 に答える