16 August 2013

Nomes

  • ICQ UIN ([1-9])+(?:-?\d){4,}
  • Alpha-Numeric [a-zA-Z0-9]+
  • Username de 2 a 20 caracteres <!-- - Format: string+string|number --> ^[a-zA-Z][a-zA-Z0-9-_\.]{1,20}$
  • Twitter Username ^[A-Za-z0-9_]{1,15}$ <!-- New Twitter usernames have a character maximum of 15 -->
  • Facebook Username ^[a-z\d\.]{5,}$

Senhas

  • Maiúsculas, minúsculas e números ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?!.*\s).*$
  • Maiúsculas, minúsculas, caracteres especias e números com no mínimo 8 caracteres (?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$

Cartões de crédito

  • Amex [0-9]{4} *[0-9]{6} *[0-9]{5}
  • Genérico [0-9]{13,16}
  • Diners Club ^([30|36|38]{2})([0-9]{12})$

Códigos postais

  • Americano ( nnnnn ou nnnnn-nnnn ) (\d{5}([\-]\d{4})?)
  • Brasileiro/CEP ( nnnnn-nn ) [0-9]{5}[\-]?[0-9]{3}

Data e Horário

  • Básico ( DD.MM.YYYY ) (0[1-9]|1[0-9]|2[0-9]|3[01]).(0[1-9]|1[012]).[0-9]{4}
  • Americano ( YYYY-MM-DD ) ISO_8601 [0-9]{4}-(0[1-9]|1[012])-(0[1-9]|1[0-9]|2[0-9]|3[01])
  • Validação completa de data (YYYY-MM-DD) (?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))
    • Verificações
    • se o ano é numérico e começa com 19 ou 20
    • se o mes é numérico, entre 01 e 12
    • se o dia é numérico entre 01-29
    • se o dia for 30 o mes nao deve ser 02
    • se o dia for 31, o valor do mes deve ser um dos seguintes 01, 03, 05, 07, 08, 10 ou 12


- Formato MM/DD/YYYY (0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d - Formato MM/DD/YYYY, validado (?:(?:0[1-9]|1[0-2])[\/\\-. ]?(?:0[1-9]|[12][0-9])|(?:(?:0[13-9]|1[0-2])[\/\\-. ]?30)|(?:(?:0[13578]|1[02])[\/\\-. ]?31))[\/\\-. ]?(?:19|20)[0-9]{2} - Data com ano bissexto (?:19|20)(?:(?:[13579][26]|[02468][048])-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))|(?:[0-9]{2}-(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:29|30))|(?:(?:0[13578]|1[02])-31))) - Tempo ( HH:MM:SS ) (0[0-9]|1[0-9]|2[0-3])(:[0-5][0-9]){2} - Datetime ( exemplo: 1990-12-31T23:59:60Z / 1996-12-19T16:39:57-08:00) /([0-2][0-9]{3})\-([0-1][0-9])\-([0-3][0-9])T([0-5][0-9])\:([0-5][0-9])\:([0-5][0-9])(Z|([\-\+]([0-1][0-9])\:00))/


Telefones

  • Phone Number (Format: +99(99)9999-9999) [\+]\d{2}[\(]\d{2}[\)]\d{4}[\-]\d{4}

Cores

  • Hexadecimal ( #CCC ou #CCCCCC ) ^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$

Outros

  • Endereço IPv4 ((^|\.)((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]?\d))){4}$
  • EndereçoIPv6 ((^|:)([0-9a-fA-F]{0,4})){1,8}$
  • Domínios do tipo "abc.de" ^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}$
  • Números com ou sem decimais ( 9 ou 9.9 ou 9,9 ) [-+]?[0-9]*[.,]?[0-9]+
  • UUID ^[0-9A-Fa-f]{8}\-[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{4}\-[0-9A-Fa-f]{12}$
  • Latitude ou Longitude -?\d{1,3}\.\d+
  • Preço ( 1.00 ) \d+(\.\d{2})?
  • Preço ( 1,00 ) \d+(,\d{2})?
  • ISBN (?:(?=.{17}$)97[89][ -](?:[0-9]+[ -]){2}[0-9]+[ -][0-9]|97[89][0-9]{10}|(?=.{13}$)(?:[0-9]+[ -]){2}[0-9]+[ -][0-9Xx]|[0-9]{9}[0-9Xx])

    • Combinando:
    • Simple one without dashes, ISBN 13: 97[89][0-9]{10}
    • Simple one w/o dashes, ISBN 10: [0-9]{9}[0-9Xx]
    • Complex one with dashes, ISBN 13: (?=.{17}$)97[89]-(?:[0-9]+-){2}[0-9]+-[0-9]
    • Complex one with dashes, ISBN 10: (?=.{13}$)(?:[0-9]+-){2}[0-9]+-[0-9Xx]
  • Md5 Hash [0-9a-fA-F]{32}


Fontes