The matches()
method checks whether the string matches the given regular expression or not.
Example
class Main {
public static void main(String[] args) {
// a regex pattern for
// four letter string that starts with 'J' and end with 'a'
String regex = "^J..a$";
System.out.println("Java".matches(regex));
}
}
// Output: true
Syntax of matches()
The syntax of the string matches()
method is:
string.matches(String regex)
Here, string is an object of the String
class.
matches() Parameters
The matches()
method takes a single parameter.
- regex - a regular expression
matches() Return Value
- returns true if the regex matches the string
- returns false if the regex doesn't match the string
Example 1: Java matches()
class Main {
public static void main(String[] args) {
// a regex pattern for
// five letter string that starts with 'a' and end with 's'
String regex = "^a...s$";
System.out.println("abs".matches(regex)); // false
System.out.println("alias".matches(regex)); // true
System.out.println("an abacus".matches(regex)); // false
System.out.println("abyss".matches(regex)); // true
}
}
Here, "^a...s$"
is a regex, which means a 5 letter string that starts with a and ends with s
.
Example 2: Check for Numbers
// check whether a string contains only numbers
class Main {
public static void main(String[] args) {
// a search pattern for only numbers
String regex = "^[0-9]+$";
System.out.println("123a".matches(regex)); // false
System.out.println("98416".matches(regex)); // true
System.out.println("98 41".matches(regex)); // false
}
}
Here, "^[0-9]+$"
is a regex, which means only digits.