SimplePhoneValidation
Simple custom validator for phone numbers using a reg exp.
The reg exp used is:
/((?:\+|00)[17](?: |\-)?|(?:\+|00)[1-9]\d{0,2}(?: |\-)?|(?:\+|00)1\-\d{3}(?: |\-)?)?(0\d|\([0-9]{3}\)|[1-9]{0,3})(?:((?: |\-)[0-9]{2}){4}|((?:[0-9]{2}){4})|((?: |\-)[0-9]{3}(?: |\-)[0-9]{4})|([0-9]{7}))/
It covers:
- as valid numbers
0123456789 +33698912549 +33 6 79 91 25 49 +33-6-79-91-25-49 (555)-555-5555 18005551234 1 800 555 1234 +1 800 555-1234 +86 800 555 1234 1-800-555-1234 1 (800) 555-1234 (800) 555-1234 (800)5551234 800-555-1234
- as invalid numbers
abcdefghij 935 263223 64 949 067 9 91 254 9
Usage
validates :my_phone_attribute, phone: true
validates :my_other_phone, phone: true, allow_blank: true
Installation
Add this line to your application's Gemfile:
gem 'simple_phone_validation'
And then execute:
$ bundle
Or install it yourself as:
$ gem install simple_phone_validation
License
The gem is available as open source under the terms of the MIT License.