address_line_divider 1.0.4 → 1.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +2 -0
- data/Gemfile.lock +1 -1
- data/lib/address_line_divider/address_parser.rb +12 -2
- data/lib/address_line_divider/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 35c739931b4af196ad0a5dc9181106b9484c849e6a27a907f75afb407647a9f8
|
4
|
+
data.tar.gz: 90db5541183059ea3a59a99b76f9bb9eb4aae261af4c07a7de3add6c560c1418
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1b7ef4b0b5261404a42c9c72e58128e4f229ba99442e49fd5edf4369e4ce41e6f54006280e7fb2dda672f13e87ba3ede8d8f25ff18c53077a20f432288cf787a
|
7
|
+
data.tar.gz: a4aede3d31b69bac9e7ea051cac8f235b27fc8a083b96eccfdcdbe6ea687003fd6e38473ee63c2d0baeec99ee3c99cb07d892737c03c462628bf167342e4a19a
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
@@ -10,19 +10,29 @@ module AddressLineDivider
|
|
10
10
|
street = search_street_on_file(address_line)
|
11
11
|
return [street, street_no(address_line, street)] if street
|
12
12
|
|
13
|
-
parse_using_regex(address_line)
|
13
|
+
result = parse_using_regex(address_line)
|
14
|
+
result unless result.nil? || result.any?(:nil?)
|
14
15
|
end
|
15
16
|
|
16
17
|
private
|
17
18
|
|
18
19
|
def parse_using_regex(address_line)
|
19
|
-
|
20
|
+
last_number = last_number(address_line)
|
21
|
+
return unless last_number
|
22
|
+
|
23
|
+
last_number_index = address_line.index(last_number)
|
20
24
|
street_name = address_line[0..last_number_index - 1].strip
|
21
25
|
street_no = address_line[last_number_index..-1].strip
|
22
26
|
|
27
|
+
return if invalid_result(address_line, [street_name, street_no])
|
28
|
+
|
23
29
|
[street_name, street_no]
|
24
30
|
end
|
25
31
|
|
32
|
+
def invalid_result(address_line, result)
|
33
|
+
squish(result.join(" ")) != squish(address_line)
|
34
|
+
end
|
35
|
+
|
26
36
|
def last_number(address_line)
|
27
37
|
squish(address_line).split(" ").select do |substr|
|
28
38
|
substr =~ /[[:digit:]]/
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: address_line_divider
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matias Albarello
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-07-
|
11
|
+
date: 2021-07-16 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description:
|
14
14
|
email:
|