Expressões regulares variadas
Mais um post da série sobre expressões regulares. Os outros posts de regex podem ser encontrados aqui, aqui e aqui.
Valida número do ISBN (International Standard Book Number)
ISBNx20(?=.{13}$)d{1,5}([- ])d{1,7}1d{1,6}1(d|X)$
[Testar](http://regexpal.com/?flags=®ex=ISBNx20%28%3F%3D.{13}%24%29d{1%2C5}%28[-%20]%29d{1%2C7}1d{1%2C6}1%28d | X%29%24&input=ISBN%20972-1-02783-9) |
Valida formato do CNPJ
d{2}.?d{3}.?d{3}/?d{4}-?d{2}
**Limitar o tamanho de uma string em 50 caracteres **
^(.|n){0,50}$
[Testar](http://regexpal.com/?flags=®ex=^%28. | n%29{0%2C50}%24&input=Bla%20teste%20uahsuhaushua%20regex%20%C3%A9%20legal%20jonnas%20fonini) |
Valida formato de temperaturas Celsius e Fahrenheit
^([+-]?[0-9]+)([CF])$
Valida nomes de dispositivos no Linux (mude a parte do “eth” para validar outros dispositivos)
^(eth[0-9]$)|(^eth[0-9]:[1-9]$)
[Testar](http://regexpal.com/?flags=®ex=^%28eth[0-9]%24%29 | %28^eth[0-9]%3A[1-9]%24%29&input=eth0) |
Valida nomes de domínios
^(a-zA-Z0-9([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?.)+[a-zA-Z]{2,6}$
Valida e-mails de TLD’s (Top Level Domains) específicos
^[A-Z0-9._%+-]+@[A-Z0-9.-]+.(?:|com|org|net|gov|[A-Z]{2})$
[Testar](http://regexpal.com/?flags=im®ex=^[A-Z0-9._%25%2B-]%2B%40[A-Z0-9.-]%2B.%28%3F%3A | com | org | net | gov | [A-Z]{2}%29%24&input=contato%email.net%0Ateste%40teste.biz) |
Localiza tags HTML vazias
<(A-ZA-Z0-9\*)[^>]\*>s*</1>
Localiza variáveis e valores de arquivos INI
^([^=rn]+)=(.*)
Encontra linhas duplicadas
^(.*)(r?n1)+$
Localiza rótulos de discos do Windows. Ex: C:
^([a-z]):