Gruppen in Java Regex erfassen
In Java stellen reguläre Ausdrücke ein leistungsstarkes Werkzeug zum Extrahieren wertvoller Daten aus Eingabetexten dar. Das Erfassen von Gruppen spielt in diesem Prozess eine entscheidende Rolle, da es Ihnen ermöglicht, bestimmte Teile des Textes abzugleichen und abzurufen.
Bedenken Sie den folgenden Codeausschnitt:
<code class="java">import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexTut3 { public static void main(String[] args) { String line = "This order was placed for QT3000! OK?"; String pattern = "(.*)(\d+)(.*)"; // Create a Pattern object Pattern r = Pattern.compile(pattern); // Now create matcher object. Matcher m = r.matcher(line); if (m.find()) { System.out.println("Found value: " + m.group(0)); System.out.println("Found value: " + m.group(1)); System.out.println("Found value: " + m.group(2)); } else { System.out.println("NO MATCH"); } } }</code>
Dieser Block sucht nach einem bestimmten Muster innerhalb der gegebenen Eingabe. Das Muster wird durch den regulären Ausdruck „(.)(d )(.)“ definiert, der aus drei einfangenden Gruppen besteht:
Verstehen der Ergebnisse
Bei der Ausführung gibt der Block die folgende Ausgabe aus:
Found value: This order was placed for QT3000! OK? Found value: This order was placed for QT3000 Found value: 3000
Die erste Zeile druckt den gesamten übereinstimmenden Text, dargestellt durch Gruppe (0). Die zweite Zeile zeigt den Inhalt der Gruppe (1), die den Text „Diese Bestellung wurde für QT3000 aufgegeben“ erfasst hat. Schließlich erfasste Gruppe (2) die Ziffern „3000“.
Vorteile der Erfassung von Gruppen
Die Erfassung von Gruppen ermöglicht Ihnen nicht nur das einfache Extrahieren bestimmter Teile des Eingabetextes sondern bieten auch die folgenden Vorteile:
Das obige ist der detaillierte Inhalt vonWie helfen die Erfassungsgruppen in Java Regular Expressions beim Extrahieren bestimmter Textteile und welche Vorteile bieten sie?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!