Sha256: debfab272cef445a0d158e3b58906c85755364c30a2133d9e04719314b760825
Contents?: true
Size: 1.09 KB
Versions: 3
Compression:
Stored size: 1.09 KB
Contents
# # RFC822 Email Address Regex # -------------------------- # # Originally written by Cal Henderson # c.f. http://iamcal.com/publish/articles/php/parsing_email/ # # Translated to Ruby by Tim Fletcher, with changes suggested by Dan Kubb. # # Licensed under a Creative Commons Attribution-ShareAlike 2.5 License # http://creativecommons.org/licenses/by-sa/2.5/ # module Highrise module RFC822 EmailAddress = begin qtext = '[^\\x0d\\x22\\x5c\\x80-\\xff]' dtext = '[^\\x0d\\x5b-\\x5d\\x80-\\xff]' atom = '[^\\x00-\\x20\\x22\\x28\\x29\\x2c\\x2e\\x3a-' + '\\x3c\\x3e\\x40\\x5b-\\x5d\\x7f-\\xff]+' quoted_pair = '\\x5c[\\x00-\\x7f]' domain_literal = "\\x5b(?:#{dtext}|#{quoted_pair})*\\x5d" quoted_string = "\\x22(?:#{qtext}|#{quoted_pair})*\\x22" domain_ref = atom sub_domain = "(?:#{domain_ref}|#{domain_literal})" word = "(?:#{atom}|#{quoted_string})" domain = "#{sub_domain}(?:\\x2e#{sub_domain})*" local_part = "#{word}(?:\\x2e#{word})*" addr_spec = "#{local_part}\\x40#{domain}" pattern = /\A#{addr_spec}\z/ end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
peterosullivan-highrise-3.0.7 | lib/highrise/rfc822.rb |
peterosullivan-highrise-3.0.6 | lib/highrise/rfc822.rb |
peterosullivan-highrise-3.0.5 | lib/highrise/rfc822.rb |