java.util.regex gói java cung cấp các lớp khác nhau để tìm các mẫu cụ thể trong chuỗi ký tự. Lớp mẫu của gói này là một biểu diễn đã biên dịch của một biểu thức chính quy.
Mẫu () phương pháp của Mẫu lớp tìm nạp và trả về biểu thức chính quy ở định dạng chuỗi, sử dụng mẫu hiện tại đã được biên dịch.
Ví dụ 1
import java.util.regex.Pattern;
public class PatternExample {
public static void main(String[] args) {
String date = "12/09/2019";
String regex = "^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$";
//Creating a pattern object
Pattern pattern = Pattern.compile(regex);
if(pattern.matcher(date).matches()) {
System.out.println("Date is valid");
} else {
System.out.println("Date is not valid");
}
//Retrieving the regular expression of the current pattern
String regularExpression = pattern.pattern();
System.out.println("Regular expression: "+regularExpression);
}
} Đầu ra
Date is valid
Regular expression: ^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$ Ví dụ 2
public class PatternExample {
public static void main(String[] args) {
String input = "Hi my id is 056E1563";
//Regular expression using groups
String regex = "(.*)?(\\d+)";
//Creating a pattern object
Pattern pattern = Pattern.compile(regex);
if(pattern.matcher(input).matches()) {
System.out.println("Match found");
} else {
System.out.println("Match not found");
}
//Retrieving the regular expression of the current pattern
String regularExpression = pattern.pattern();
System.out.println("Regular expression: "+regularExpression);
}
} Đầu ra
Match found Regular expression: (.*)?(\d+)