Skip to content

Instantly share code, notes, and snippets.

@danicunhac
Created December 10, 2019 12:19
Show Gist options
  • Save danicunhac/10d0a7d0ebfff4786587d4f61f7e2e52 to your computer and use it in GitHub Desktop.
Save danicunhac/10d0a7d0ebfff4786587d4f61f7e2e52 to your computer and use it in GitHub Desktop.
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class expressoes_regulares {
public static void main(String[] args) {
Main main = new Main();
main.run();
}
public void run(){
Scanner in = new Scanner(System.in);
String padrao, expressao;
while (true) {
System.out.println("Para validar número, digite 'n';\nPara validar url, digite 'u'; "
+ "\nPara validar email, digite 'e'; \nPara validar identificador, digite 'i'; \nPara sair, digite algo diferente:");
padrao = in.nextLine();
switch (padrao.toLowerCase()) {
case "n":
System.out.println("Digite a expressão a ser checada: ");
expressao = in.nextLine();
if (ValidaNumero(expressao)) System.out.println("É um numero.");
else System.out.println("Não é numero.");
break;
case "u":
System.out.println("Digite a expressão a ser checada: ");
expressao = in.nextLine();
if (ValidaURL(expressao)) System.out.println("É uma URL.");
else System.out.println("Não é URL.");
break;
case "e":
System.out.println("Digite a expressão a ser checada: ");
expressao = in.nextLine();
if (ValidaEmail(expressao)) System.out.println("É um e-mail.");
else System.out.println("Não é e-mail.");
break;
case "i":
System.out.println("Digite a expressão a ser checada: ");
expressao = in.nextLine();
if (ValidaIdentificador(expressao)) System.out.println("É um identificador.");
else System.out.println("Não é identificador.");
break;
default:
System.out.println("Operação inválida, por favor recomeçe.");
System.exit(0);
}
}
}
public boolean ValidaNumero(String string){
Pattern numero = Pattern.compile("\\d{4,5}\\-\\d{4}");
Matcher matcher = numero.matcher(string);
return matcher.matches();
}
public boolean ValidaEmail(String string){
Pattern email = Pattern.compile("[a-zA-Z0-9_.-]+@[a-zA-Z0-9_.-]+\\.(com|org|br)");
Matcher matcher = email.matcher(string);
return matcher.matches();
}
public boolean ValidaURL(String string){
Pattern url = Pattern.compile("w{3}\\.[a-zA-Z0-9]+\\.(com|org|br)");
Matcher matcher = url.matcher(string);
return matcher.matches();
}
public boolean ValidaIdentificador(String string){
Pattern id = Pattern.compile("(_|[a-zA-Z])\\w*");
Matcher matcher = id.matcher(string);
return matcher.matches();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment