を動的に作成するには正規表現変数パラメータの数は?Java:実行時に可変引数を使って正規表現を正しく構築する方法
など。私の正規表現は以下のようであれば:
String REGEX = "\\b(?:word1(?:(\\s+)word2(?:(\\s+)word3)?)?)";
私は動的にwordX交換/正規表現文字列の受け渡しを作成したいと私は、例えば言葉の可変数を渡したいですわずか2またはおそらく7である。
e.e.e.
REGEX = "\\b(?:cat(?:(\\s+)mouse(?:(\\s+)rain)?)?)";
1回の呼び出しで、もう中:
REGEX = "\\b(?:cat(?:(\\s+)mouse(?:(\\s+)rain(?:(\\s+)blue(?:(\\s+)?)?)?)?)?)";
正規表現は、それがうまく支えられていることを提供受け入れられる可能性がこれらの構造には適していないという答えになってしまいます。
3番目の表現は、最初の2つと同じ形式ではありません(グループは同じ方法でネストされません - 'rain)(?:空)。だから私はあなたがしようとしていることを理解していない。 – Mat
ああこれはコピーペーストでした。これは前のと同じですが2つの余分な引数があります。その式はその順序でタームを見つけるはずです。それがすべてのタームと一致しない場合は、 – Cratylus