Computer >> Máy Tính >  >> Lập trình >> Java

Phương thức mẫu pattern () trong Java với các ví dụ

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+)