Module Authlogic::Regex
In: lib/authlogic/regex.rb

This is a module the contains regular expressions used throughout Authlogic. The point of extracting them out into their own module is to make them easily available to you for other uses. Ex:

  validates_format_of :my_email_field, :with => Authlogic::Regex.email

Methods

email   email_nonascii   login  

Public Class methods

A general email regular expression. It allows top level domains (TLD) to be from 2 - 24 in length. The decisions behind this regular expression were made by analyzing the list of top-level domains maintained by IANA and by reading this website: www.regular-expressions.info/email.html, which is an excellent resource for regular expressions.

A draft regular expression for internationalized email addresses. Given that the standard may be in flux, this simply emulates @email_regex but rather than allowing specific characters for each part, it instead disallows the complement set of characters:

  • email_name_regex disallows: @[]^ !"#$()*,/:;<=>?`{|}~\ and control characters
  • domain_head_regex disallows: _%+ and all characters in email_name_regex
  • domain_tld_regex disallows: 0123456789- and all characters in domain_head_regex

en.wikipedia.org/wiki/Email_address#Internationalization tools.ietf.org/html/rfc6530 www.unicode.org/faq/idn.html ruby-doc.org/core-2.1.5/Regexp.html#class-Regexp-label-Character+Classes en.wikipedia.org/wiki/Unicode_character_property#General_Category

A simple regular expression that only allows for letters, numbers, spaces, and .-_@+. Just a standard login / username regular expression.

[Validate]