You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Arthur POULET 23fd6a7776
readme: update dev name
4 months ago
certs update to 0.1.1 6 years ago
lib Fix bug on Rfc1123::Public 6 years ago
test update to 0.2.2 6 years ago
.drone.yml ci: add continous integration tests 4 months ago
.gitignore update to 0.1.3 (fix name) 6 years ago
CHANGELOG Fix bug on Rfc1123::Public 6 years ago
Gemfile ci: add continous integration tests 4 months ago
Gemfile.lock deps: update dependencies 4 months ago
LICENSE ci: add continous integration tests 4 months ago
README.md readme: update dev name 4 months ago
Rakefile initialize 6 years ago
ruby_email.gemspec ci: add continous integration tests 4 months ago
version Fix bug on Rfc1123::Public 6 years ago

README.md

A RFC compliant Email validator

Build Status

Installation

gem install ruby_email

or in the Gemfile

gem 'ruby_email'

Usage in Ruby

require 'ruby_email'

# Pure Rfc5322
RubyEmail::Rfc5322.validates? "toto@tata" # => true
RubyEmail::Rfc5322.match "toto@tata" # => #<MatchData "toto@tata" local:"toto" domain:"tata">
RubyEmail::Rfc5322.validates? "toto" # => false
RubyEmail::Rfc5322.match "toto" # => nil

# Rfc5322 + Internet basic usage
RubyEmail::Rfc5322::Public.validates? "toto@tata.com" # => true
RubyEmail::Rfc5322::Public.match "toto@tata.com" # => #<MatchData "toto@tata" local:"toto" domain:"tata.com">

# Rfc5322 Strings
require 'ruby_email/rfc5322/string'
"local@domain".is_email? # => true
"local".is_email? # => false

# Rfc5322 Strings + Internet basic usage
require 'ruby_email/rfc5322/public/string'
"local@domain.root".is_public_email? # => true
"local@domain".is_public_email? # => false

Usage in Ruby on Rails

class Model < ActiveRecord::Base
  # validates :email, format: RubyEmail::Rfc5322::REGEXP # valid on an intranet ...
  validates :email, format: RubyEmail::Rfc5322::Public::REGEXP
end

Unitary tests

rake test

Contributes !

Find a bug ? Want a new feature ? Create a clear pull request and we'll see :)