terça-feira, 27 de dezembro de 2011

Expressões Regulares

*
Qualquer cadeia de caractere.

Expressão Regular: J*Free // Qualquer coisa que comece com J e termine com Free.



[ ]
Um dos elementos do conjunto

Expressão Regular: [rgp]ato // Qualquer palavra com a primeira letra sendo ou 'r' ou
'g' ou 'p', e as letras seguintes sendo "ato"



^
Exclusão

Expressão Regular: [^rgp]ato // Qualquer palavra cuja primeira letra NÃO é 'r' nem
'g' nem 'p', sendo "ato" o resto da palavra.



-
Intervalo

Expressão Regular: [H-L]avaFree // A primeira letra da palavra deve está entre H e L
(inclusive H e L)




\
Classe de caracteres pré-definidos. São eles:

  1. \d : Um dígito,  
  2. \D : Algo que não seja um dígito,  
  3. \s : Um espaço em branco,  
  4. \S : Algo que não seja um espaço em branco,  
  5. \w : Qualquer letra, dígito ou underscore ( _ )  
  6. \W : Algo que não seja letra, dígito ou underscore  


Expressão regular: \wJavaFree\s200\d\w

String comparada: _JavaFree 2004_





?
Uma ou nenhuma vez, assim como '*', '?' é um elemento quantificador.

Expressão regular: a? // Uma ou nenhuma ocorrência de 'a'



+
Uma ou mais vezes, assim como '*' e '?', é um elemento [i]quantificador[i].

Expressão regular: a+ // Uma ou mais ocorrências de 'a'





  1. /* Exemplo prático 
  2.  * 
  3.  * Verifica se um endereço de email é válido 
  4.  * 
  5.  * Compilar: javac ValidarEmail.java 
  6.  * Executar: java ValidarEmail teste@meuemail.com 
  7.  */  
  8.   
  9. // --------------------------------------------------------------- classes nativas  
  10. import java.util.regex.*;  
  11.   
  12. // --------------------------------------------------------------- nossa classe  
  13. class ValidarEmail  
  14. {  
  15.         public static void main (String[] args)  
  16.         {  
  17.                 if (args.length < 1// Falta argumentos de execução  
  18.                 {  
  19.                         System.out.println("Uso: java ValidarEmail <seu@email.com>");  
  20.                 }  
  21.                 else  
  22.                 {  
  23.                         // Email válido é na forma usario@endereco.com , usario@endereco.com.br, etc.  
  24.                        
  25.                         Pattern padrao = Pattern.compile(".+@.+\\.[a-z]+");   
  26.   
  27.                         Matcher pesquisa = padrao.matcher(args[0]);  
  28.   
  29.                         if (pesquisa.matches())  
  30.                         {  
  31.                                 System.out.println("O email " + args[0] + " eh valido!");  
  32.                         }  
  33.                         else  
  34.                         {  
  35.                                 System.out.println("O email " + args[0] + " nao eh valido!");  
  36.                         }  
  37.                 }  
  38.         }
  39. }/

Nenhum comentário:

Postar um comentário