Logo Wand.Tools

Reguläre Ausdrücke Generator

Intelligente Generierung und Erklärung von regulären Ausdrücken, unterstützt verschiedene gängige Mustervergleiche

Java Reguläre Ausdrücke (Regex) Tutorial

Umfassendes Java Reguläre Ausdrücke (Regex) Tutorial (mit Beispielen) | Java Regex Tutorial erklärt

Java Reguläre Ausdrücke (Regex) sind ein mächtiges Werkzeug zur Textverarbeitung und werden häufig für String-Matching, Validierung, Ersetzung und mehr verwendet. Dieser Artikel bietet Ihnen das praktischste Java Regex Tutorial, begleitet von detaillierten Codebeispielen, um Ihnen zu helfen, Java Regex-Fähigkeiten zu meistern und verschiedene Entwicklungsszenarien problemlos zu bewältigen.


✅ Grundlegende Syntax für reguläre Ausdrücke

Ausdruck Beschreibung
. Passt zu jedem Zeichen außer Zeilenumbrüchen
^ Passt zum Anfang der Eingabezeichenkette
$ Passt zum Ende der Eingabezeichenkette
* Passt zum vorherigen Element 0 oder mehr Mal
+ Passt zum vorherigen Element 1 oder mehr Mal
? Passt zum vorherigen Element 0 oder 1 Mal
[] Passt zu jedem Zeichen innerhalb der Klammern
[^^] Passt zu jedem Zeichen, das nicht innerhalb der Klammern ist
{n} Passt genau n Mal
{n,} Passt mindestens n Mal
{n,m} Passt n bis m Mal (einschließlich)
\d Passt zu einem Ziffernzeichen, entspricht [0-9]
\w Passt zu einem Wortzeichen (Buchstabe, Zahl oder Unterstrich), entspricht [a-zA-Z_0-9]
\s Passt zu jedem Leerzeichen
` `

🚀 Schlüsselklassen für die Verwendung von Regulären Ausdrücken in Java

  • java.util.regex.Pattern
  • java.util.regex.Matcher

📌 Grundlegendes Beispiel: Überprüfung, ob eine Zeichenkette einer Regex entspricht

import java.util.regex.*;

public class RegexExample1 {
    public static void main(String[] args) {
        String pattern = "^[a-zA-Z0-9]{6,12}$";
        String input = "abc12345";

        Pattern p = Pattern.compile(pattern);
        Matcher m = p.matcher(input);

        if (m.matches()) {
            System.out.println("Abgleich erfolgreich");
        } else {
            System.out.println("Abgleich fehlgeschlagen");
        }
    }
}

🧩 Beispiel: Extrahieren aller E-Mail-Adressen

import java.util.regex.*;

public class RegexExample2 {
    public static void main(String[] args) {
        String text = "Kontakt-E-Mail: [email protected], [email protected]";
        String regex = "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}";

        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(text);

        while (m.find()) {
            System.out.println("E-Mail gefunden: " + m.group());
        }
    }
}

🔁 Beispiel: Ersetzen aller Telefonnummernformate

import java.util.regex.*;

public class RegexExample3 {
    public static void main(String[] args) {
        String input = "Kundentelefon: 13812345678, alternative Nummer: 13987654321";
        String regex = "1[3-9]\\d{9}";

        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(input);

        String result = m.replaceAll("***Vertraulich***");
        System.out.println(result);
    }
}

🔍 Beispiel: Validierung gängiger Formate (Telefonnummer, E-Mail, Personalausweis)

public class RegexValidation {
    public static void main(String[] args) {
        String phone = "13812345678";
        String email = "[email protected]";
        String idCard = "110101199003077777";

        System.out.println(phone.matches("^1[3-9]\\d{9}$"));          // true
        System.out.println(email.matches("^[\\w.-]+@[\\w.-]+\\.[a-zA-Z]{2,}$")); // true
        System.out.println(idCard.matches("^\\d{17}[\\dXx]$"));       // true
    }
}

🔐 Häufige Regex-Vorlagen (Empfohlen zum Speichern)

  • Validierung der Telefonnummer: ^1[3-9]\\d{9}$
  • Validierung der E-Mail: ^[\\w.-]+@[\\w.-]+\\.[a-zA-Z]{2,}$
  • Validierung der Personalausweisnummer: ^\\d{17}[\\dXx]$
  • Überprüfung der Passwortstärke: ^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$
  • Validierung der IP-Adresse: ^(\\d{1,3}\\.){3}\\d{1,3}$
  • Validierung der URL-Adresse: ^https?://[\\w.-]+(?:\\.[\\w\\.-]+)+[/#?]?.*$

📈 Gängige Anwendungsfälle für Java Reguläre Ausdrücke

  • Formularvalidierung (Telefonnummer, E-Mail, Passwort)
  • Extraktion von Textinhalten (Log-Analyse, Extraktion von E-Mail-Adressen)
  • Verarbeitung sensibler Informationen (z. B. Ersetzen von Personalausweisen, Telefonnummern)
  • Massenersetzung und -bereinigung von Zeichenketten
  • Standardisierung von Datenformaten