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

Método matchs() de Pattern no Java e exemplo

do Javajava.util.regexO pacote oferece várias classes para encontrar padrões específicos em sequências de caracteres. A classe Pattern do pacote é uma representação compilada de expressões regulares.

domatch()O método da classe Pattern aceita-

  • representa o valor de string da expressão regular.

  • CharSequenceUm objeto da classe representa a string de entrada.

Ao chamar este método, ele comparará a string de entrada com a expressão regular. Este método retorna um valor booleano, true se coincidir, caso contrário, false.

Exemplo

import java.util.Scanner;
import java.util.regex.Pattern;
public class MatchesExample {
   public static void main(String[] args) {
      //Obter data
      Scanner sc = new Scanner(System.in);
      System.out.println("Insira a string de data em [dd/mm/formato: ");
      String date = sc.next();
      String regex = "^("1[0-2]|0[1-9])/(3[01)12]|[-9]|0[1-9])/[0-9]{4$";
      //Crie um objeto de padrão
      boolean result = Pattern.matches(regex, date);
      if(result) {
         System.out.println("A data é válida");
      } else {
         System.out.println("A data não é válida");
      }
   }
}

saída1

Insira a string de data em [dd/mm/formato: yyy]
01/12/2019
A data é válida

saída2

Insira a string de data em [dd/mm/formato: yyy]
2019-21-12
A data não é válida