Ich versuche den Unterschied zwischen matches()
und zu verstehen find()
.
Laut Javadoc wird ( matches()
soweit ich weiß ) die gesamte Zeichenfolge durchsucht, auch wenn sie findet, wonach sie sucht, und sie find()
wird aufhören, wenn sie findet, wonach sie sucht.
Wenn diese Annahme richtig ist, kann ich nicht sehen, wann Sie matches()
stattdessen verwenden find()
möchten, es sei denn, Sie möchten die Anzahl der gefundenen Übereinstimmungen zählen.
Meiner Meinung nach sollte die String-Klasse dann find()
statt matches()
als eingebaute Methode haben.
Um es zusammenzufassen:
- Ist meine Annahme richtig?
- Wann ist es sinnvoll,
matches()
statt zu verwendenfind()
?
find()
mehrmaliger Anruf unterschiedliche Ergebnisse für dasselbe Ergebnis liefern kannMatcher
. Siehe meine Antwort unten.