English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Метод pattern шаблона в Java и пример

javajava.util.regexПакет предоставляет различные классы для поиска специфических шаблонов в строках. Классы шаблонов пакета являются компиляторными представлениями регулярных выражений.

Паттернклассаpattern()Метод возвращает регулярное выражение в виде строки и использует его для компиляции текущего шаблона.

Пример 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])/\d{4}$";
      //Создание объекта шаблона
      Pattern pattern = Pattern.compile(regex);
      if(pattern.matcher(date).matches()) {
         System.out.println("Дата действительна");
      }
         System.out.println("Дата недействительна");
      }
      //Поиск текущего шаблона регулярного выражения
      String regularExpression = pattern.pattern();
      System.out.println("Регулярное выражение: " + regularExpression);
   }
}

Результат вывода

Дата действительна
Регулярное выражение: ^([1-2][0-9]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/\d{4}$

Пример 2

public class PatternExample {
   public static void main(String[] args) {
      String input = "Hi my id is 056E1563";
      //Использование регулярного выражения с группами
      String regex = "(.*)?(\\d+)";
      //Создание объекта шаблона
      Pattern pattern = Pattern.compile(regex);
      if(pattern.matcher(input).matches()) {
         System.out.println("Найдено совпадение");
      }
         System.out.println("Совпадение не найдено");
      }
      //Поиск текущего шаблона регулярного выражения
      String regularExpression = pattern.pattern();
      System.out.println("Регулярное выражение: " + regularExpression);
   }
}

Результат вывода

Найдено совпадение
Регулярное выражение: (.*)?(\d+)