Implementierung regulärer Ausdrücke in Java

Einführung

Reguläre Ausdrücke in JAVA sind eine Reihe von Sonderzeichen, die Ihnen helfen, Zeichenfolgen oder Zeichenfolgen in Ihrem Programm zu finden oder abzugleichen. Die Ausdrücke haben eine spezielle Syntax, die nur für diesen Zweck erstellt wurde. Um reguläre Ausdrücke in Ihren Programmen zu verwenden, müssen Sie das Paket java.util.regex importieren. Reguläre Ausdrücke für Java- und Perl-Programmierung sind ziemlich ähnlich. Das Paket java.util.regex enthält im Wesentlichen drei Klassen: Pattern-Klasse, Matcher-Klasse und die PatternSyntaxException-Klasse.

  • Musterklasse – Ein Pattern-Objekt ist die kompilierte Darstellung eines regulären Ausdrucks und hat keine öffentlichen Konstruktoren. Wenn Sie ein Musterobjekt erstellen möchten, müssen Sie die Methode compilieren() aufrufen, die ein Musterobjekt zurückgibt.
  • Matcher-Klasse – In der Klasse Matcher findet die Ausführung und das Mapping der regulären Ausdrücke statt. Diese Klasse nimmt eine Eingabeklasse und versucht, sie einer der regulären Ausdrucksdarstellungen von Strings zuzuordnen. In dieser Klasse gibt es keine öffentlichen Konstruktoren. Wenn Sie ein Matcher-Objekt erstellen möchten, müssen Sie die matcher()-Methode für ein Pattern-Objekt aufrufen.
  • Muster SyntaxException – Diese Klasse fängt Syntaxfehler in einem Muster für reguläre Ausdrücke ab.

Beispiel

Im folgenden Beispiel werden reguläre Ausdrücke verwendet, um eine Ziffernfolge aus einer alphanumerischen Zeichenfolge zu überprüfen und zu finden.

java.util.regex.Matcher importieren; java.util.regex.Pattern importieren; public class RegexMatches { public static void main( String args[] ) { // Der zu scannende Eingabestring String line = "Diese Bestellung wurde für QT3000 aufgegeben! OK?"; Zeichenfolgenmuster = "(.*)(\\d+)(.*)"; // Musterobjekt Muster r = Pattern.compile(pattern); // Erstellen eines Matcher-Objekts Matcher m = r.matcher(line); if (m.find( )) { System.out.println("Gefundener Wert: " + m.group(0)); System.out.println("Gefundener Wert: " + m.group(1)); System.out.println("Gefundener Wert: " + m.group(2)); } else { System.out.println("KEINE MATCH"); } } }

 

AUSGABE

Gefundener Wert: Diese Bestellung wurde für QT3000 aufgegeben! OK?
Gefundener Wert: Diese Bestellung wurde für QT3000 aufgegeben!
Gefundener Wert: 0

Hinterlassen Sie eine Nachricht

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.