Neste artigo venho apresentar o software “The Regex Coach” que auxilia o desenvolvimento de expressões regulares, com validações enquanto cria os padrões da expressão regular.
The Regex Coach é basedo em lisp e desenvolvido por estudantes sob a licença free, pode ser instalado em qualquer sistema (Unix,Linux,Windows). Para utiliza-lo basta a cessar o site
http://weitz.de/regex-coach/ e baixar o arquivo através deste link http://weitz.de/files/regex-coach.exe.
Utilização:
Nesta primeira tela a área superior “Regular expression” é onde podemos colocar a expressão regular. Logo abaixo em “Target String” onde colocamos a string a ser testada com a expressão, note a string
está em amarelo isso significa que está válida de acordo com a expressão definida no box superior “Regular expression“.
Simulando erro
Caso a string esteja incorreta levando em consideração a expressão a string fica sem a cor amarela que pode ser visualizada na tela abaixo. Neste caso ela não está válida pois o endereço está faltando um “w” e com isso está inválida a expressão.
Para quem não reconheceu esta expressão válida endereços web com final “br” “http://www.qualquernome.(com ou org ou gov).br”
Abaixo segue algumas expressões regulares bastante usadas
Data (dd/mm/aaaa)
Expressão: ^([0-9]|[0,1,2][0-9]|3[0,1])/([\d]|1[0,1,2])/\d{4}$
Resultado: 21/12/2007
Numero Decimal
Expressão: ^\d*[0-9](\.\d*[0-9])?$
Resultado: 234.342
Arquivos Documentos
Expressão:^[a-zA-Z0-9-_\.]+\.(pdf|txt|doc|csv)$
Resultado: world-domination.pdf
E-mail
Expressão:^([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$
Resultado: info@lymas.com.br
Codigo Cor HTML
Expressão: ^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$
Resultado: #00ccff
Arquivo de Imagem
Expressão:^[a-zA-Z0-9-_\.]+\.(jpg|gif|png)$
Resultado: new-pic_company.jpg
Endereco IP
Expressão:^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})$
Resultado: 192.168.0.1
Arquivos Multimídia
Expressão:^[a-zA-Z0-9-_\.]+\.(swf|mov|wma|mpg|mp3|wav)$
Resultado: company-presentation.swf
Data Formato Mysql
Expressão:^\d{4}-(0[0-9]|1[0,1,2])-([0,1,2][0-9]|3[0,1])$
Resultado: 2005-09-02
Telefone (BR)
Expressão:^\(?\d{2}\)?[\s-]?\d{4}-?\d{4}$
Resultado: (11) 5555-1977
Codigo Postal (EUA)
Expressão:^([A-Z][0-9]){3}$
Resultado: V2B2S3
Hora (HH:MM)
Expressão:^([0-1][0-9]|[2][0-3])(:([0-5][0-9])){1,2}$
Resultado: 12:29
URL
Expressão:^(http[s]?://|ftp://)?(www\.)?[a-zA-Z0-9-\.]+\.(com|org|net|mil|edu|ca|co.uk|com.au|gov|br)$
Resultado: http://www.google.com
Telefone Internacional
Expressão:^(([0-9]{1})*[- .(]*([0-9a-zA-Z]{3})*[- .)]*[0-9a-zA-Z]{3}[- .]*[0-9a-zA-Z]{4})+$
Resultado: 1.245.532.3422
Sites de referência:
http://weitz.de/regex-coach/
http://imasters.com.br/artigo/2515/javascript/regular_expression/