DÊVIDA REGEXP: DIFERENçA ENTRE [^0-9], ^[0-9] E +-

KELLY 11/11/2015 18:14:05
#453734
Olá a todos,

Qual a diferença entre [^0-9] e ^[0-9], uma expressão usando o acento circunflexo(Metacaractere) dentro das chaves(Agrupador) e outra fora do agrupador e os sinais de +(adição) e -(subtração)?

Este exemplo está usando os sinais de + e - que me causaram dúvidas no seu uso. O objetivo dessa expressão regular é validar email.

var filtro = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;

Grata!


DS2T 12/11/2015 04:19:25
#453746
Resposta escolhida
1 - Qual a diferença entre [^0-9] e ^[0-9]?

Existem dois empregos pro [Ô]^[Ô]. Quando ele está fora do colchete, ele indica apenas o começo de uma linha. Quando está dentro e no começo, ele expressa a ideia de negação.

Resumidamente:

[^0-9] - Não quero números;
^[0-9] - Iniciei a linha e quero números!


2 - Pra que meteram [Ô]+[Ô] e [Ô]-[Ô] no bagulho?

Quando você usa o [Ô]+[Ô], você tá falando que vai ter pelo menos uma repetição.
Exemplo: D+8 = DDDDD8 ou DD8 ou DDDDDDDDDDDD8

No seu caso:

[\w-]+ = Quero numeros, letras, underlines ... e eles podem se repetir a vontade. EFDDSDS é válido. 33ffd3E é válido. ess$%#@ inválido.

O [Ô]-[Ô] não tem significado especial até onde eu saiba. Ele é usado como hífen mesmo, para indicar que a primeira e a segunda parte do email, podem conter hífens.
primeiraparte@segundaparte.com.br


Eu perdi um bom tempo estudando Regex... não aconselho ficar quebrando a cabeça com isso não, porque depois de um tempo você acaba esquecendo muita coisa. Foram que existem ferramentas que constroem a expressão pra você e as mais usadas são facilmente encontradas na net. é muita decoreba.

Espero ter ajudado



KELLY 12/11/2015 13:33:07
#453773
Entendi suas explicações DS2T, eu não conhecia ferramentas para fazer isso. Eu também preciso estudar para processos seletivos porque isso cai em prova, então não tem outra solução. Outra coisa que eu não entendi e se não for abusando muito da sua ajuda, gostaria de saber o funcionamento da [Ô]?[Ô] (interrogação). Pesquisei em vários lugares e não achei uma boa explicação ou um exemplo que me fizesse entender o seu uso.

Grata.

DS2T 12/11/2015 20:32:13
#453824
Fala aí Kelly!

Meus pêsames por precisar estudar isso.
Sobre a interrogação, ele assume o papel de opcional.

Se tiver a expressão beleza, se não tiver, beleza também!
Ele é muito utilizado no caso de encontrar palavras no singular e no plural.

Exemplo:

espelho[s]? --- Se escrever [Ô]espelhos[Ô], vai dar match! Se você escrever [Ô]espelho[Ô] vai dar match!

Certinho?
KELLY 13/11/2015 16:18:53
#453870
Sim, obrigada pela ajuda DS2T.

Ah! Eu adorei o incentivo nos estudos. rs!
Tópico encerrado , respostas não são mais permitidas