JavaのMatcher#matches()とMatcher#find()の違い

部分一致と全体一致の違い

・Matcher#matches()は入力シーケンス全体にマッチする。
・Matcher#find()は入力シーケンスの部分にマッチする。

前回の検索処理結果を引きずるかどうかの違い

・Matcher#matches()は引きずらない。
・Matcher#find()は引きずる。

public boolean find()
入力シーケンスからこのパターンとマッチする次の部分シーケンスを検索します。
このメソッドは、正規検索エンジンの領域の先頭から開始されます。ただし、前回の呼出しが正常に終了してから正規表現エンジンがリセットされていない場合は、前回のマッチで一致しなかった最初の文字から開始されます。

マッチが成功した場合は、start、end、およびgroupメソッドを使用して詳細情報を取得できます。

戻り値:
入力シーケンスの部分シーケンスがこの正規表現エンジンのパターンとマッチした場合にのみtrue

Matcher(Java Platform SE 8)