Heim > Java > javaLernprogramm > Hauptteil

Wie rufe ich mit regulären Java-Ausdrücken ein Array von Übereinstimmungen aus einer Zeichenfolge ab?

Linda Hamilton
Freigeben: 2024-11-24 11:59:12
Original
108 Leute haben es durchsucht

How to Retrieve and Array of Matches from a String Using Java Regular Expressions?

Übereinstimmungen mithilfe regulärer Ausdrücke in Java abrufen

Das Abrufen eines Arrays von Übereinstimmungen aus einer bestimmten Zeichenfolge mithilfe regulärer Ausdrücke in Java erfordert das Erstellen eines Matchers und Über Übereinstimmungen iterieren.

Mit a Matcher

Erstellen Sie ein Matcher-Objekt mit der Kompilierungsmethode der Pattern-Klasse:

Matcher m = Pattern.compile("regex_expression").matcher(input_string);
Nach dem Login kopieren

Über Übereinstimmungen iterieren

Verwenden Sie die Suchfunktion Methode des Matchers zum Durchlaufen von Übereinstimmungen:

List<String> allMatches = new ArrayList<>();
while (m.find()) {
  allMatches.add(m.group());
}
Nach dem Login kopieren

Konvertieren to Array

Wenn Sie ein Array von Übereinstimmungen benötigen, verwenden Sie die toArray-Methode:

String[] matchesArray = allMatches.toArray(new String[0]);
Nach dem Login kopieren

Erweiterte Methoden mit MatchResult (Java >= 9)

In Java 9 und höher können Sie die toMatchResult-Methode für einen Matcher verwenden, um ein MatchResult zu erstellen Objekt. Dies stellt Methoden zum Erstellen verzögerter Iteratoren für eine effiziente Schleife über Übereinstimmungen bereit:

for (MatchResult match : MatchResult.findAll(p, input)) {
  // Use match information without advancing iteration...
}
Nach dem Login kopieren

Dieser Code verwendet beispielsweise die Hilfsmethode „allMatches“, um über Übereinstimmungen zu iterieren und ihre Gruppen und Positionen auszugeben:

for (MatchResult match : allMatches(Pattern.compile("[abc]"), "abracadabra")) {
  System.out.println(match.group() + " at " + match.start());
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie rufe ich mit regulären Java-Ausdrücken ein Array von Übereinstimmungen aus einer Zeichenfolge ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage