Regex Pattern Matching and Extraction
Uses Pattern and Matcher classes to validate email addresses, extract groups, replace text, and split strings with regular expressions.
Code
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);
}
}Report a problem with this exampleOpens a pre-filled issue on GitHub.