質問: p.matcher(str); // 出力 System.out.println(m.group()); ``` このPatternとMatcherを用いて一致する部分を検索しようとした際に、上記のコードでは「ABC」と全部出力されます。正規表現だけを用いて「A」「B」「C」の3つを取り出して配列かリストに格納したいです。私の実装方法が悪いと思うのですが、、、よろしくお願いしますm(_ _)m
回答: `.*`だとで始まって、その後はずっと何でも良くて、で終わる。 ということになるので、最初のから最後のがひと塊でヒットするんですね。 こういう場合は最短マッチという方法でマッチすると希望通りになるかもしれません。 `.*?`という正規表現になります。