Regex Pattern Matching and Extraction

Uses Pattern and Matcher classes to validate email addresses, extract groups, replace text, and split strings with regular expressions.

JavaForm Validation

Code

snippet
import java.util.regex.*;
import java.util.List;

public class RegexPatternMatching {

    static boolean isValidEmail(String email) {
        Pattern pattern = Pattern.compile(
            "^[\\w.-]+@[\\w.-]+\\.[a-zA-Z]{2,}$"
        );
        return pattern.matcher(email).matches();
    }

    public static void main(String[] args) {
        List<String> emails = List.of(
            "[email protected]",
            "invalid-email",
            "[email protected]"
        );

        for (String email : emails) {
            System.out.println(email + " -> " + isValidEmail(email));
        }

        String text = "Order #12345 confirmed on 2025-01-15";
        Pattern orderPattern = Pattern.compile("Order #(\\d+)");
        Matcher matcher = orderPattern.matcher(text);
        if (matcher.find()) {
            System.out.println("Order ID: " + matcher.group(1));
        }

        String cleaned = text.replaceAll("\\d", "*");
        System.out.println("Masked: " + cleaned);

        String[] parts = "a,b,,c".split(",");
        System.out.println("Parts: " + parts.length);
    }
}