VALIDAR CORREO, LETRAS Y NUMEROS CON PATTERN Y MATCHER EN JAVA



En esta ocasión crearemos una clase llamada Validar en donde declararemos dos tres métodos estáticos los cuales nos servirán para validar un correo electrónico, letra o cadena de letras y para validar números, posteriormente implementaremos estos métodos  en la clase principal . Debemos importar java.util.scanner ya que utilizaremos la clase Scanner para leer la cadena de caracteres ingresada por el usuario, este paquete lo importaremos en la clase principal. También debemos importar los paquetes  java.util.regex.Matcher y java.util.regex.Pattern, El método pattern devuelve la expresión regular que vamos a compilar, el método matcher crea un objeto matcher a partir del patrón. Con estos dos métodos es que vamos a validar lo antes mencionado.




Primero creamos la clase Validar.

public class Validar {

    static public boolean isEmail(String correo) { 
        Pattern pat = null;
        Matcher mat = null;
        pat = Pattern.compile("[\\w\\-\\_\\+]+(\\.[\\w\\-\\_]+)*@([A-za-z0-9-]+\\.)+[A-za-z]{2,4}");
        mat = pat.matcher(correo);
        if (mat.matches()) {
            return true;
        } else {
            return false;
        }

    }

    static public boolean isNum(String num) {

        Pattern pat = null;
        Matcher mat = null;
        pat = Pattern.compile("[0-9]+");
        mat = pat.matcher(num);

        if (mat.matches()) {
            return true;
        } else {
            return false;
        }

    }

    static public boolean isCadena(String num) {

        Pattern pat = null;
        Matcher mat = null;
        pat = Pattern.compile("[A-za-z]+");
        mat = pat.matcher(num);

        if (mat.matches()) {
            return true;
        } else {
            return false;
        }

    }

}//fin de la clase Validar

Ahora crearemos la clase principal para ejecutar los métodos ya creados.




import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static validar.Validar.isCadena;
import static validar.Validar.isNum;
import static validar.Validar.isEmail;

public class main {

    /**
     * @param args the command line arguments
     */


    public static void main(String[] args) {
        // TODO code application logic here
        
        Scanner leer = new Scanner(System.in);
        System.out.println("Digite el correo\n");
        String correo = leer.next();
        
        if (isEmail(correo)){
            System.err.println("correo valido");
        }
        else{
            System.err.println("correo no valido");
        }
    }
    
}




Previous
Next Post »