0
どのグループに一致するものだけが返されますか?正規表現 "Or" 1つのグループを返しますJava
私はこの正規表現を持っている:私は実行すると
".*>(\\d+.*)\\s.*\\(.*</|>(\\d+.+)<"
:式の2番目の部分が一致しているときはいつでも、( 'OR' 演算子の後の式)
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(comparisonString);
if(m.find() == true){
System.out.println(m.group(1));
}
nullが返されます。二次式( 'OR'の後の式)が一致するたびに、一致するグループを返すにはどうすればよいですか?あなたはグループをキャプチャ使用する必要が
ありがとうございます!私は最終的にこれをやって終わった:「もし(m.group(1)= nullを!){ \t \t \t \t \t \t \tのSystem.out.println(m.group(1)); \t \t \t \t \t \t}他{ \t \t \t \t \t \t \tのSystem.out.println(m.group(2))。 \t \t \t \t \t \t ' – rmp2150
ああ、1つだけ一致する必要がありますか?その場合、2つのオプションのグループを持つ方が簡単でしょう。その1つは?演算子: "(最初のグループ)?(2番目のグループ)?" – Charles
彼に感謝の代わりに、彼の答えをアップアップしてみませんか? –