Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

valor da expressão var exp = /[,;\-]/;

Não entendi por que foi utilizado dentro do conjunto o simbolo de escape -. Testei o exercício com var exp = /[,;-]/ e funcionou também. Poderia me explicar?

2 respostas
solução!

O - na regex indica range. Por exemplo quando fazemos [0-9].

No exemplo, o - ficou no final então acho que o browser deu um desconto e ignorou ele como range. Mas se vc fizer por exemplo /[,-;]/ não vai funcionar.

O ideal é, sempre que encontrar um caracter especial como o -, escapa-lo. Assim tanto faz como vc escreve a expressao, ela vai sempre funcionar como desejado.

Obrigado, Sérgio! Entendi.