0
この文字列を指定すると、 "a001212a a1212a a00333a a00334a abvbv";文字列の3番目の数字を選択
正規表現を変更するだけで3番目の番号を選択しようとしています。しかし、私はそれを理解することはできません。私は正規表現だけを変更することが許されています。 matcher.group(2)に引数を変更してもグループ(1)ではなく、私のコードは動作します。
ヘルプ?
String nthNumber(String string) {
Pattern pat = Pattern.compile(
"(\\D+0*(\\d+)\\D+){3,}.*"
);
Matcher matcher = pat.matcher(string);
matcher.matches();
return matcher.group(1);
}
'a001212a a1212a a00333a a00334a abvbv'とすると、期待される出力は何ですか? '1'、 '00333'、 '333'、または 'a00333a'? – Andreas
グループ(1)はa00333aと一致していますか? 333とgroup(1)を一致させたい場合は、最初の '('を '(?)'と置き換えて非捕捉グループにしてください) – SlumpA