Matcher の find() と group() (2)

oboe2uran.hatenablog.com

を書きましたが、Matcher だけにフォーカスすれば、
必ずマッチが約束されているなら、

Git-Hub にUPした https://github.com/yipuran/yipuran-core/wiki#returnalconsumert
ReturnalConsumer を使って

Pattern ptn = Pattern.compile("\\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])(0[0-9]|1[0-9]|2[0-3])(0[0-9]|[0-5][0-9])(0[0-9]|[0-5][0-9])");

String timestring = ReturnalConsumer.of(Matcher.class)
                                .with(e->e.find())
                                .get(ptn.matcher(string))
                                .group();

とするのも良いでしょう。