Java Pattern
Java Pattern java.util.regex
Regular Expression
Pattern Pattern
\d[0-9]\w[a-zA-Z0-9_]a+a^$
Pattern
Pattern
Pattern compile()
import java.util.regex.Pattern;
//
Pattern pattern = Pattern.compile("a*b");
//
Pattern pattern = Pattern.compile("a*b");
matcher(CharSequence input)
Matcher
Matcher matcher = pattern.matcher("aaaab");
matches(String regex, CharSequence input)
boolean isMatch = Pattern.matches("a*b", "aaaab"); // true
split(CharSequence input)
String[] parts = pattern.split("aaaabtest"); // ["", "test"]
Flags
Pattern.CASE_INSENSITIVE |
|
Pattern.MULTILINE |
^ $ |
Pattern.DOTALL |
. |
Pattern.UNICODE_CASE |
Unicode |
//
Pattern pattern = Pattern.compile("a*b", Pattern.CASE_INSENSITIVE);
Pattern pattern = Pattern.compile("a*b", Pattern.CASE_INSENSITIVE);
Pattern
String emailRegex = "^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$";
Pattern emailPattern = Pattern.compile(emailRegex);
String email = "[email protected]";
boolean isValid = emailPattern.matcher(email).matches();
Pattern emailPattern = Pattern.compile(emailRegex);
String email = "[email protected]";
boolean isValid = emailPattern.matcher(email).matches();
String text = "Price: $123.45";
Pattern numberPattern = Pattern.compile("\\d+\\.?\\d*");
Matcher matcher = numberPattern.matcher(text);
if (matcher.find()) {
String number = matcher.group(); // "123.45"
}
Pattern numberPattern = Pattern.compile("\\d+\\.?\\d*");
Matcher matcher = numberPattern.matcher(text);
if (matcher.find()) {
String number = matcher.group(); // "123.45"
}
String input = "Hello, my phone is 123-456-7890";
Pattern phonePattern = Pattern.compile("\\d{3}-\\d{3}-\\d{4}");
String output = phonePattern.matcher(input).replaceAll("[PHONE]");
// : "Hello, my phone is [PHONE]"
Pattern phonePattern = Pattern.compile("\\d{3}-\\d{3}-\\d{4}");
String output = phonePattern.matcher(input).replaceAll("[PHONE]");
// : "Hello, my phone is [PHONE]"
Pattern""
(?:...)(...)
Pattern Java Pattern Matcher Pattern
Pattern
static Pattern compile(String regex) |
Pattern |
static Pattern compile(String regex, int flags) |
|
static boolean matches(String regex, CharSequence input) |
+ |
static String quote(String s) |
Pattern.CASE_INSENSITIVE |
|
Pattern.MULTILINE |
^$ |
Pattern.DOTALL |
(.) |
Pattern.UNICODE_CASE |
Unicode |
Matcher matcher(CharSequence input) |
|
String[] split(CharSequence input) |
|
String[] split(CharSequence input, int limit) |
|
Stream<String> splitAsStream(CharSequence input) |
(Java 8+) |
String pattern() |
|
int flags() |
|
String toString() |