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

Método pattern() no Java com exemplo

Estejava.util.regex.MatcherClasse representa um motor, realiza várias operações de correspondência. Esta classe não possui construtor, pode usarmatches()método da classe java.util.regex.Pattern cria/obter o objeto dessa classe.

EsteMatcher) dopattern()método obtém e retorna o Pattern (objeto) interpretado pelo Matcher atual.

exemplo1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PatternExample {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Insira sua data de nascimento (MM/DD/YYY)
      String date = sc.next();
      String regex = "^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9}4}
      //criar um objeto padrão
      Padrão pattern = Pattern.compile(regex);
      //criar um objeto Matcher
      Matcher matcher = pattern.matcher(date);
      //verificação da data
      if(matcher.matches())
         System.out.println("A data é válida");
      else
         System.out.println("A data não é válida");
      //padrão de busca usado
      Padrão p = matcher.pattern();
      System.out.println("Padrão usado para correspondência da data fornecida: \n"+p);
   }
}

Resultado de Saída

Insira sua data de nascimento
01/21/2019
A data é válida
Padrão usado para correspondência da data fornecida:
^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9}4}

exemplo2

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PatternExample {
   public static void main(String args[]) {
      //Ler string do usuário
      System.out.println("Insira uma String");
      Scanner sc = new Scanner(System.in);
      String input = sc.next();
      //Expressão regular para coincidir palavras que começam com um número
      String regex = "^[0-9].*$";
      //Compilar expressão regular
      Padrão pattern = Pattern.compile(regex);
      //Recuperar objeto do matcher
      Matcher matcher = pattern.matcher(input);
      Padrão p = matcher.pattern();
      System.out.println("Padrão usado para coincidir a string de entrada: ");+p);
      //Verificar se ocorreu coincidência
      if(matcher.matches())
         System.out.println("O primeiro caractere é um dígito");
      else
         System.out.println("O primeiro caractere não é um dígito");
   }
}

Resultado de Saída

Insira uma String
2amostra
Padrão usado para coincidir a string de entrada: ^[0-9].*$
O primeiro caractere é um dígito