Sim, ** um ou dois checks ** de regras dentro de strings Sem Dúvida são enxutos 
usando expressões regulares, mas RAPIDAMENTE ao vc acumular várias regras (e 
são MESMO VÁRIAS, essa meia dúzia de regras que citei são apenas ALGUMAS das 
mais importantes, nãoe esgotam Não as possibilidades!) vc vai ver que a coisa 
começa a ficar Complexa pra debugar - EM ESPECIAL porque, ao invés de termos 
comandos, tudo fica em caracteres funcionais numa expressão só - eu fico 
perdidinho Fácil a hora que a expressão regular começa a ter mais de uma dúzia 
de caracteres funcionais, fácil....
 Por exemplo, digamos que vamos implementar a regra de que o email tem que 
começar por letra , o caracter para indicar começo da string é ^, para 
assegurar que a string contenha elementos de uma lista é [] , e para 
representar letraz de A a Z usamos A-Z, então fica assim :
 
 ^[A-Z]
 
 mas ainda tem mais o que colocar a regra de obrigatório um @ (isso é o sinal 
de +), que depois do @ tem que vir alfanumérico, chegamos nisto :
 
 ^[A-Z]+@[A-Z0-9]
 
 e aí vai, vc vai ver que fácil pra chegar numa expressão regular usável, 
implementando pelo menos essa meia dúzia simples de regras, muito provavelmente 
vamos chegar numa dúzia opu mais de comandos regulares, pra mim isso não é algo 
Enxuto pra se debugar/entender/analisar - pode ser Enxuto no sentido de menos 
texto escrito, menos código, mas pra se ENTENDER a lógica (permitindo posterior 
debug) nem sempre...
 
 Senso assim, a minha Preferência pessoal seria mesmo por fazer algo mais ou 
menos como exemplificado, separando os IFs, mas vai da preferência, mesmo : 
afinal, se é verdade que normalmente é mais fácil de se entender/analisar 
código linear E código explícito não tem o consumo de CPU por vezes louco das 
regexps, como eu tinha dito antes SE consumo extra não é uma preocupação E SE a 
pessoa tá acostumada com regexps, COM CERTEZA usando regexp vai escrever SIm um 
código mais curto : http://www.regular-expressions.info/email.html é om ponto 
de partida interessante pra esses casos... 
 
 []s
 
   Chiappa
   
OBS : é importante, creio, que se frise (pela última vez na thread, mais pra 
consumo de eventuais leitores que não acompanharam do começo) que comparações 
com strings (pra ver se há caracteres alfabéticos dentro dela, por exemplo) são 
TOTALMENTE DEPENDENTES das questões NLS para que o RDBMS possa 'entender' que 
as letras acentuadas Fazem Parte do conjunto de caracteres alfabéticos, o link 
que indiquei acima Re-afirma esse importante ponto....
  Assim sendo, como eu havia dito repito :o CERTO, o Recomendado, o modo Ótimo 
de se trabalhar é se ASSEGURAR que o setting de NLS da sessão-cliente é O MESMO 
(ou pelo menos COmpatível) com os settings NLS do banco, aí tanto expressões 
regexp como A-Z funcionam, Quanto também é Possível incluir no código de 
verificação de email sendo escrito linhas para convertemos as letras acentuadas 
para letras comuns Ou então usarmos as funções que tratam strings 
localizadas.....
  • [oracle... zfurq...@gmail.com [oracle_br]
    • Re... Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
      • ... zfurq...@gmail.com [oracle_br]
        • ... Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
          • ... zfurq...@gmail.com [oracle_br]
            • ... jlchia...@yahoo.com.br [oracle_br]
              • ... zfurq...@gmail.com [oracle_br]
                • ... jlchia...@yahoo.com.br [oracle_br]
                • ... Gustavo Guedes guedescomputa...@gmail.com [oracle_br]
                • ... jlchia...@yahoo.com.br [oracle_br]
      • ... zfurq...@gmail.com [oracle_br]
        • ... Emerson dos Santos Gaudêncio emerson.fen...@gmail.com [oracle_br]
          • ... zfurq...@gmail.com [oracle_br]
        • ... 'Schiavini' et...@schiavini.inf.br [oracle_br]

Responder a