ruby_regex 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +51 -0
- data/lib/ruby_regex.rb +9 -1
- data/test/ruby_regex_test.rb +18 -0
- metadata +32 -18
- data/README.rdoc +0 -52
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8f3ca30f2c864850d5d12fe51a73f4374dd269de
|
4
|
+
data.tar.gz: 726537820b07ed6a0794db8d81e2595225b339ce
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 213eded349042ba25850aef71e27961d49155b8f01c7bf1d26c58da3f9500924a9170538706075feaabdc0ee9c867194363afab704b2845faa3ae364069bb7f8
|
7
|
+
data.tar.gz: eaa31ce49e1ae410412d45c55035ed8adc50e525f772fb3f8a797e4eb3e6eac8b309dcf8c7be84641f145861d72f61145af5c5ab11fd2340b2aa69ecd2b3af2c
|
data/README.md
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
# RubyRegex
|
2
|
+
|
3
|
+
[](http://badge.fury.io/rb/ruby_regex)
|
4
|
+
[](https://travis-ci.org/eparreno/ruby_regex)
|
5
|
+
[](https://codeclimate.com/github/eparreno/ruby_regex)
|
6
|
+
|
7
|
+
RubyRegex is a nice collection of regular expressions in Ruby
|
8
|
+
|
9
|
+
## Regular expressions
|
10
|
+
|
11
|
+
```
|
12
|
+
RubyRegex::Url
|
13
|
+
RubyRegex::Domain
|
14
|
+
RubyRegex::Email
|
15
|
+
RubyRegex::Username
|
16
|
+
RubyRegex::USSocialSecurity
|
17
|
+
RubyRegex::GeneralPostalCode
|
18
|
+
RubyRegex::ZIPCode
|
19
|
+
RubyRegex::CreditCard
|
20
|
+
RubyRegex::MasterCard
|
21
|
+
RubyRegex::Visa
|
22
|
+
RubyRegex::TwitterUsername
|
23
|
+
RubyRegex::DeliciousUsername
|
24
|
+
RubyRegex::SlideshareUsername
|
25
|
+
RubyRegex::GithubUsername
|
26
|
+
RubyRegex::UUID
|
27
|
+
RubyRegex::DBDate
|
28
|
+
RubyRegex::DBDatetime
|
29
|
+
RubyRegex::SpanishBankAccountNumber
|
30
|
+
RubyRegex::Dni
|
31
|
+
```
|
32
|
+
|
33
|
+
## Rails
|
34
|
+
|
35
|
+
Add to your Gemfile
|
36
|
+
|
37
|
+
gem 'ruby_regex'
|
38
|
+
|
39
|
+
In the models
|
40
|
+
|
41
|
+
validates_format_of :email, :with => RubyRegex::Email
|
42
|
+
|
43
|
+
## Contribute
|
44
|
+
|
45
|
+
Of course, contributions will be apreciated.
|
46
|
+
|
47
|
+
If you want to contribute send me a pull request with new regular expressions (and their tests) or send me an email with your desired regular expression to emili@eparreno.com
|
48
|
+
|
49
|
+
---
|
50
|
+
|
51
|
+
RubyRegex is released under the MIT-License and is Copyright (c)2010 Emili Parreño.
|
data/lib/ruby_regex.rb
CHANGED
@@ -52,7 +52,7 @@ module RubyRegex
|
|
52
52
|
|
53
53
|
# UUID
|
54
54
|
# Validates a UUID as defined: http://en.wikipedia.org/wiki/Universally_unique_identifier
|
55
|
-
UUID = /\A(
|
55
|
+
UUID = /\A(\h{32}|\h{8}-\h{4}-\h{4}-\h{4}-\h{12})\z/
|
56
56
|
|
57
57
|
# Date DB format YYYY-MM-DD
|
58
58
|
# I know it will validate 2001-02-31 but is I think we are focusing in formats more than in parsing
|
@@ -63,4 +63,12 @@ module RubyRegex
|
|
63
63
|
|
64
64
|
# SpanishBankAccountNumber
|
65
65
|
SpanishBankAccountNumber = /\A\d{4}[ -]?\d{4}[ -]?\d{2}[ -]?\d{10}\z/
|
66
|
+
|
67
|
+
# IBAN
|
68
|
+
# Source: http://snipplr.com/view/15322/iban-regex-all-ibans/
|
69
|
+
# You have to remove spaces or any separator character from the original field before use this regex
|
70
|
+
IBAN = /[a-zA-Z]{2}[0-9]{2}[a-zA-Z0-9]{4}[0-9]{7}([a-zA-Z0-9]?){0,16}/
|
71
|
+
|
72
|
+
# MacAddress
|
73
|
+
MacAddress = /\A([0-9A-F]{2}[:-]){5}([0-9A-F]{2})\z/i
|
66
74
|
end
|
data/test/ruby_regex_test.rb
CHANGED
@@ -156,6 +156,24 @@ class RubyRegexTest < Test::Unit::TestCase
|
|
156
156
|
check_invalid_regex RubyRegex::SpanishBankAccountNumber, load_fixture('spanish_bank_account_numbers')['invalid']
|
157
157
|
end
|
158
158
|
|
159
|
+
# IBAN
|
160
|
+
def test_valid_iban
|
161
|
+
check_valid_regex RubyRegex::IBAN, load_fixture('ibans')['valid']
|
162
|
+
end
|
163
|
+
|
164
|
+
def test_invalid_iban
|
165
|
+
check_invalid_regex RubyRegex::IBAN, load_fixture('ibans')['invalid']
|
166
|
+
end
|
167
|
+
|
168
|
+
# MacAddress
|
169
|
+
def test_valid_mac_addresses
|
170
|
+
check_valid_regex RubyRegex::MacAddress, load_fixture('mac_addresses')['valid']
|
171
|
+
end
|
172
|
+
|
173
|
+
def test_invalid_mac_addresses
|
174
|
+
check_invalid_regex RubyRegex::SpanishBankAccountNumber, load_fixture('mac_addresses')['invalid']
|
175
|
+
end
|
176
|
+
|
159
177
|
private
|
160
178
|
def load_fixture( name )
|
161
179
|
YAML.load( File.read( File.join( File.dirname(__FILE__), 'fixtures', "#{name}.yml" ) ) )
|
metadata
CHANGED
@@ -1,27 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_regex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.2
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Emili Parreno
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2017-02-08 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rake
|
16
|
-
requirement:
|
17
|
-
none: false
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
|
-
type: :
|
20
|
+
type: :development
|
23
21
|
prerelease: false
|
24
|
-
version_requirements:
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: test-unit
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
25
41
|
description: Ruby regular expressions library
|
26
42
|
email: emili@eparreno.com
|
27
43
|
executables: []
|
@@ -29,38 +45,36 @@ extensions: []
|
|
29
45
|
extra_rdoc_files: []
|
30
46
|
files:
|
31
47
|
- CHANGELOG
|
32
|
-
- README.rdoc
|
33
48
|
- LICENSE
|
49
|
+
- README.md
|
34
50
|
- lib/ruby_regex.rb
|
35
|
-
- test/ruby_regex_test.rb
|
36
51
|
- test/fixtures/emails.yml
|
52
|
+
- test/ruby_regex_test.rb
|
37
53
|
homepage: http://github.com/eparreno/ruby_regex
|
38
54
|
licenses: []
|
55
|
+
metadata: {}
|
39
56
|
post_install_message:
|
40
57
|
rdoc_options:
|
41
|
-
- --main
|
58
|
+
- "--main"
|
42
59
|
- README
|
43
60
|
require_paths:
|
44
61
|
- lib
|
45
62
|
required_ruby_version: !ruby/object:Gem::Requirement
|
46
|
-
none: false
|
47
63
|
requirements:
|
48
|
-
- -
|
64
|
+
- - ">="
|
49
65
|
- !ruby/object:Gem::Version
|
50
66
|
version: '0'
|
51
67
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
52
|
-
none: false
|
53
68
|
requirements:
|
54
|
-
- -
|
69
|
+
- - ">="
|
55
70
|
- !ruby/object:Gem::Version
|
56
71
|
version: '0'
|
57
72
|
requirements: []
|
58
73
|
rubyforge_project:
|
59
|
-
rubygems_version:
|
74
|
+
rubygems_version: 2.6.8
|
60
75
|
signing_key:
|
61
|
-
specification_version:
|
76
|
+
specification_version: 4
|
62
77
|
summary: none
|
63
78
|
test_files:
|
64
79
|
- test/ruby_regex_test.rb
|
65
80
|
- test/fixtures/emails.yml
|
66
|
-
has_rdoc: true
|
data/README.rdoc
DELETED
@@ -1,52 +0,0 @@
|
|
1
|
-
= RubyRegex
|
2
|
-
|
3
|
-
RubyRegex is a nice collection of regular expressions in Ruby
|
4
|
-
|
5
|
-
== Regular expressions
|
6
|
-
|
7
|
-
RubyRegex::Url
|
8
|
-
RubyRegex::Domain
|
9
|
-
RubyRegex::Email
|
10
|
-
RubyRegex::Username
|
11
|
-
RubyRegex::USSocialSecurity
|
12
|
-
RubyRegex::GeneralPostalCode
|
13
|
-
RubyRegex::ZIPCode
|
14
|
-
RubyRegex::CreditCard
|
15
|
-
RubyRegex::MasterCard
|
16
|
-
RubyRegex::Visa
|
17
|
-
RubyRegex::TwitterUsername
|
18
|
-
RubyRegex::DeliciousUsername
|
19
|
-
RubyRegex::SlidesahreUsername
|
20
|
-
RubyRegex::GithubUsername
|
21
|
-
RubyRegex::UUID
|
22
|
-
RubyRegex::DBDate
|
23
|
-
RubyRegex::DBDatetime
|
24
|
-
RubyRegex::SpanishBankAccountNumber
|
25
|
-
|
26
|
-
== Rails
|
27
|
-
|
28
|
-
Add to your Gemfile
|
29
|
-
|
30
|
-
gem 'ruby_regex'
|
31
|
-
|
32
|
-
In the models
|
33
|
-
|
34
|
-
validates_format_of :email, :with => RubyRegex::Email
|
35
|
-
|
36
|
-
== Contribute
|
37
|
-
|
38
|
-
Of course, contributions will be apreciated.
|
39
|
-
|
40
|
-
If you want to contribute send me a pull request with new regular expressions (and their tests) or send me an email with your desired regular expression to emili@eparreno.com
|
41
|
-
|
42
|
-
== Contributors
|
43
|
-
|
44
|
-
- Lleïr Borràs
|
45
|
-
- Jaime Iniesta
|
46
|
-
- Fernando Guillen
|
47
|
-
- Christopher Klapp
|
48
|
-
- Guillermo Alvarez
|
49
|
-
|
50
|
-
---
|
51
|
-
|
52
|
-
RubyRegex is released under the MIT-License and is Copyright (c)2010 Emili Parreño.
|