正規表現にマッチした部分の表示
正規表現でマッチした部分を置換する、というのはよくあるんですが、マッチした部分を抽出して表示するってのはどうするんだろう、と昔思ってたことがあってその時はよく分かりませんでしたが、ひょんなことから分かったのでメモ。
String targetString = "ban, pan, an, pn, pen, pension"; Matcher matcher = Pattern.compile("p[a-z]+n").matcher(targetString); while ( matcher.find() ) { System.out.println(matcher.group()); }
これで、「pan」「pen」「pension」がコンソールに出力されます。