zipcode_ja 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. data/.gitignore +17 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +29 -0
  5. data/Rakefile +1 -0
  6. data/data/zipcode-00xxxxx.csv +522 -0
  7. data/data/zipcode-01xxxxx.csv +2165 -0
  8. data/data/zipcode-02xxxxx.csv +1981 -0
  9. data/data/zipcode-03xxxxx.csv +2540 -0
  10. data/data/zipcode-04xxxxx.csv +1108 -0
  11. data/data/zipcode-05xxxxx.csv +581 -0
  12. data/data/zipcode-06xxxxx.csv +1264 -0
  13. data/data/zipcode-07xxxxx.csv +1547 -0
  14. data/data/zipcode-08xxxxx.csv +1939 -0
  15. data/data/zipcode-09xxxxx.csv +1304 -0
  16. data/data/zipcode-10xxxxx.csv +1411 -0
  17. data/data/zipcode-11xxxxx.csv +95 -0
  18. data/data/zipcode-12xxxxx.csv +123 -0
  19. data/data/zipcode-13xxxxx.csv +166 -0
  20. data/data/zipcode-14xxxxx.csv +121 -0
  21. data/data/zipcode-15xxxxx.csv +163 -0
  22. data/data/zipcode-16xxxxx.csv +753 -0
  23. data/data/zipcode-17xxxxx.csv +189 -0
  24. data/data/zipcode-18xxxxx.csv +179 -0
  25. data/data/zipcode-19xxxxx.csv +388 -0
  26. data/data/zipcode-20xxxxx.csv +146 -0
  27. data/data/zipcode-21xxxxx.csv +252 -0
  28. data/data/zipcode-22xxxxx.csv +426 -0
  29. data/data/zipcode-23xxxxx.csv +448 -0
  30. data/data/zipcode-24xxxxx.csv +399 -0
  31. data/data/zipcode-25xxxxx.csv +758 -0
  32. data/data/zipcode-26xxxxx.csv +275 -0
  33. data/data/zipcode-27xxxxx.csv +898 -0
  34. data/data/zipcode-28xxxxx.csv +1094 -0
  35. data/data/zipcode-29xxxxx.csv +1318 -0
  36. data/data/zipcode-30xxxxx.csv +1645 -0
  37. data/data/zipcode-31xxxxx.csv +1213 -0
  38. data/data/zipcode-32xxxxx.csv +1831 -0
  39. data/data/zipcode-33xxxxx.csv +462 -0
  40. data/data/zipcode-34xxxxx.csv +715 -0
  41. data/data/zipcode-35xxxxx.csv +996 -0
  42. data/data/zipcode-36xxxxx.csv +760 -0
  43. data/data/zipcode-37xxxxx.csv +1500 -0
  44. data/data/zipcode-38xxxxx.csv +946 -0
  45. data/data/zipcode-39xxxxx.csv +740 -0
  46. data/data/zipcode-40xxxxx.csv +952 -0
  47. data/data/zipcode-41xxxxx.csv +942 -0
  48. data/data/zipcode-42xxxxx.csv +967 -0
  49. data/data/zipcode-43xxxxx.csv +1028 -0
  50. data/data/zipcode-44xxxxx.csv +2108 -0
  51. data/data/zipcode-45xxxxx.csv +1117 -0
  52. data/data/zipcode-46xxxxx.csv +768 -0
  53. data/data/zipcode-47xxxxx.csv +1083 -0
  54. data/data/zipcode-48xxxxx.csv +1452 -0
  55. data/data/zipcode-49xxxxx.csv +1048 -0
  56. data/data/zipcode-50xxxxx.csv +3363 -0
  57. data/data/zipcode-51xxxxx.csv +2448 -0
  58. data/data/zipcode-52xxxxx.csv +1851 -0
  59. data/data/zipcode-53xxxxx.csv +335 -0
  60. data/data/zipcode-54xxxxx.csv +367 -0
  61. data/data/zipcode-55xxxxx.csv +206 -0
  62. data/data/zipcode-56xxxxx.csv +723 -0
  63. data/data/zipcode-57xxxxx.csv +816 -0
  64. data/data/zipcode-58xxxxx.csv +510 -0
  65. data/data/zipcode-59xxxxx.csv +805 -0
  66. data/data/zipcode-60xxxxx.csv +4256 -0
  67. data/data/zipcode-61xxxxx.csv +1837 -0
  68. data/data/zipcode-62xxxxx.csv +1186 -0
  69. data/data/zipcode-63xxxxx.csv +1912 -0
  70. data/data/zipcode-64xxxxx.csv +1619 -0
  71. data/data/zipcode-65xxxxx.csv +1171 -0
  72. data/data/zipcode-66xxxxx.csv +1942 -0
  73. data/data/zipcode-67xxxxx.csv +2109 -0
  74. data/data/zipcode-68xxxxx.csv +1463 -0
  75. data/data/zipcode-69xxxxx.csv +1113 -0
  76. data/data/zipcode-70xxxxx.csv +1426 -0
  77. data/data/zipcode-71xxxxx.csv +764 -0
  78. data/data/zipcode-72xxxxx.csv +862 -0
  79. data/data/zipcode-73xxxxx.csv +1299 -0
  80. data/data/zipcode-74xxxxx.csv +845 -0
  81. data/data/zipcode-75xxxxx.csv +974 -0
  82. data/data/zipcode-76xxxxx.csv +714 -0
  83. data/data/zipcode-77xxxxx.csv +1751 -0
  84. data/data/zipcode-78xxxxx.csv +1730 -0
  85. data/data/zipcode-79xxxxx.csv +1746 -0
  86. data/data/zipcode-80xxxxx.csv +844 -0
  87. data/data/zipcode-81xxxxx.csv +1216 -0
  88. data/data/zipcode-82xxxxx.csv +543 -0
  89. data/data/zipcode-83xxxxx.csv +906 -0
  90. data/data/zipcode-84xxxxx.csv +879 -0
  91. data/data/zipcode-85xxxxx.csv +1651 -0
  92. data/data/zipcode-86xxxxx.csv +1903 -0
  93. data/data/zipcode-87xxxxx.csv +1890 -0
  94. data/data/zipcode-88xxxxx.csv +890 -0
  95. data/data/zipcode-89xxxxx.csv +1466 -0
  96. data/data/zipcode-90xxxxx.csv +797 -0
  97. data/data/zipcode-91xxxxx.csv +2256 -0
  98. data/data/zipcode-92xxxxx.csv +2600 -0
  99. data/data/zipcode-93xxxxx.csv +3252 -0
  100. data/data/zipcode-94xxxxx.csv +2474 -0
  101. data/data/zipcode-95xxxxx.csv +2931 -0
  102. data/data/zipcode-96xxxxx.csv +3407 -0
  103. data/data/zipcode-97xxxxx.csv +564 -0
  104. data/data/zipcode-98xxxxx.csv +3347 -0
  105. data/lib/zipcode_ja/string.rb +7 -0
  106. data/lib/zipcode_ja/version.rb +3 -0
  107. data/lib/zipcode_ja.rb +24 -0
  108. data/spec/spec_helper.rb +2 -0
  109. data/spec/zipcode_ja_spec.rb +28 -0
  110. data/zipcode_ja.gemspec +19 -0
  111. metadata +157 -0
@@ -0,0 +1,7 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ class String
4
+ def to_region
5
+ ZipcodeJa.find(self)
6
+ end
7
+ end
@@ -0,0 +1,3 @@
1
+ module ZipcodeJa
2
+ VERSION = "0.0.1"
3
+ end
data/lib/zipcode_ja.rb ADDED
@@ -0,0 +1,24 @@
1
+ require "zipcode_ja/version"
2
+ require "zipcode_ja/string"
3
+ require "csv"
4
+
5
+ module ZipcodeJa
6
+ @_zipcodes = {}
7
+
8
+ class << self
9
+ def find(zipcode)
10
+ return nil unless zipcode =~ /^[0-9]{7}$/
11
+
12
+ cc = zipcode[0, 2].to_sym
13
+ if !@_zipcodes[cc]
14
+ @_zipcodes[cc] = {}
15
+ zip_path = File.open(File.join(File.dirname(__FILE__), "../data/zipcode-#{cc}xxxxx.csv"))
16
+ CSV.foreach(zip_path) do |row|
17
+ @_zipcodes[cc][row[2]] = row
18
+ end
19
+ end
20
+
21
+ @_zipcodes[cc][zipcode]
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,2 @@
1
+ # -*- coding: utf-8 -*-
2
+ require 'zipcode_ja'
@@ -0,0 +1,28 @@
1
+ # -*- coding: utf-8 -*-
2
+ require 'spec_helper'
3
+
4
+ describe ZipcodeJa do
5
+ it 'converts zipcode to region' do
6
+ expect('9860742'.to_region).to eq([
7
+ "04606",
8
+ "98607",
9
+ "9860742",
10
+ "ミヤギケン",
11
+ "モトヨシグンミナミサンリクチョウ",
12
+ "シヅガワモトハマチョウ",
13
+ "宮城県",
14
+ "本吉郡南三陸町",
15
+ "志津川本浜町",
16
+ "0",
17
+ "0",
18
+ "0",
19
+ "0",
20
+ "0",
21
+ "0"
22
+ ])
23
+ end
24
+
25
+ it 'notfound region from zipcode' do
26
+ expect('986074'.to_region).to eq(nil)
27
+ end
28
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'zipcode_ja/version'
5
+
6
+ Gem::Specification.new do |gem|
7
+ gem.name = "zipcode_ja"
8
+ gem.version = ZipcodeJa::VERSION
9
+ gem.authors = ["Ryutaro Mizokami"]
10
+ gem.email = ["suzunatsu@yahoo.com"]
11
+ gem.description = %q{ZipcodeJa allows you to convert Japanese zipcode into a region.}
12
+ gem.summary = %q{Convert a zipcode to region.}
13
+ gem.homepage = "https://github.com/mizoR/zipcode_ja"
14
+
15
+ gem.files = `git ls-files`.split($/)
16
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
17
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
+ gem.require_paths = ["lib"]
19
+ end
metadata ADDED
@@ -0,0 +1,157 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: zipcode_ja
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Ryutaro Mizokami
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-06-06 00:00:00.000000000 Z
13
+ dependencies: []
14
+ description: ZipcodeJa allows you to convert Japanese zipcode into a region.
15
+ email:
16
+ - suzunatsu@yahoo.com
17
+ executables: []
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - .gitignore
22
+ - Gemfile
23
+ - LICENSE.txt
24
+ - README.md
25
+ - Rakefile
26
+ - data/zipcode-00xxxxx.csv
27
+ - data/zipcode-01xxxxx.csv
28
+ - data/zipcode-02xxxxx.csv
29
+ - data/zipcode-03xxxxx.csv
30
+ - data/zipcode-04xxxxx.csv
31
+ - data/zipcode-05xxxxx.csv
32
+ - data/zipcode-06xxxxx.csv
33
+ - data/zipcode-07xxxxx.csv
34
+ - data/zipcode-08xxxxx.csv
35
+ - data/zipcode-09xxxxx.csv
36
+ - data/zipcode-10xxxxx.csv
37
+ - data/zipcode-11xxxxx.csv
38
+ - data/zipcode-12xxxxx.csv
39
+ - data/zipcode-13xxxxx.csv
40
+ - data/zipcode-14xxxxx.csv
41
+ - data/zipcode-15xxxxx.csv
42
+ - data/zipcode-16xxxxx.csv
43
+ - data/zipcode-17xxxxx.csv
44
+ - data/zipcode-18xxxxx.csv
45
+ - data/zipcode-19xxxxx.csv
46
+ - data/zipcode-20xxxxx.csv
47
+ - data/zipcode-21xxxxx.csv
48
+ - data/zipcode-22xxxxx.csv
49
+ - data/zipcode-23xxxxx.csv
50
+ - data/zipcode-24xxxxx.csv
51
+ - data/zipcode-25xxxxx.csv
52
+ - data/zipcode-26xxxxx.csv
53
+ - data/zipcode-27xxxxx.csv
54
+ - data/zipcode-28xxxxx.csv
55
+ - data/zipcode-29xxxxx.csv
56
+ - data/zipcode-30xxxxx.csv
57
+ - data/zipcode-31xxxxx.csv
58
+ - data/zipcode-32xxxxx.csv
59
+ - data/zipcode-33xxxxx.csv
60
+ - data/zipcode-34xxxxx.csv
61
+ - data/zipcode-35xxxxx.csv
62
+ - data/zipcode-36xxxxx.csv
63
+ - data/zipcode-37xxxxx.csv
64
+ - data/zipcode-38xxxxx.csv
65
+ - data/zipcode-39xxxxx.csv
66
+ - data/zipcode-40xxxxx.csv
67
+ - data/zipcode-41xxxxx.csv
68
+ - data/zipcode-42xxxxx.csv
69
+ - data/zipcode-43xxxxx.csv
70
+ - data/zipcode-44xxxxx.csv
71
+ - data/zipcode-45xxxxx.csv
72
+ - data/zipcode-46xxxxx.csv
73
+ - data/zipcode-47xxxxx.csv
74
+ - data/zipcode-48xxxxx.csv
75
+ - data/zipcode-49xxxxx.csv
76
+ - data/zipcode-50xxxxx.csv
77
+ - data/zipcode-51xxxxx.csv
78
+ - data/zipcode-52xxxxx.csv
79
+ - data/zipcode-53xxxxx.csv
80
+ - data/zipcode-54xxxxx.csv
81
+ - data/zipcode-55xxxxx.csv
82
+ - data/zipcode-56xxxxx.csv
83
+ - data/zipcode-57xxxxx.csv
84
+ - data/zipcode-58xxxxx.csv
85
+ - data/zipcode-59xxxxx.csv
86
+ - data/zipcode-60xxxxx.csv
87
+ - data/zipcode-61xxxxx.csv
88
+ - data/zipcode-62xxxxx.csv
89
+ - data/zipcode-63xxxxx.csv
90
+ - data/zipcode-64xxxxx.csv
91
+ - data/zipcode-65xxxxx.csv
92
+ - data/zipcode-66xxxxx.csv
93
+ - data/zipcode-67xxxxx.csv
94
+ - data/zipcode-68xxxxx.csv
95
+ - data/zipcode-69xxxxx.csv
96
+ - data/zipcode-70xxxxx.csv
97
+ - data/zipcode-71xxxxx.csv
98
+ - data/zipcode-72xxxxx.csv
99
+ - data/zipcode-73xxxxx.csv
100
+ - data/zipcode-74xxxxx.csv
101
+ - data/zipcode-75xxxxx.csv
102
+ - data/zipcode-76xxxxx.csv
103
+ - data/zipcode-77xxxxx.csv
104
+ - data/zipcode-78xxxxx.csv
105
+ - data/zipcode-79xxxxx.csv
106
+ - data/zipcode-80xxxxx.csv
107
+ - data/zipcode-81xxxxx.csv
108
+ - data/zipcode-82xxxxx.csv
109
+ - data/zipcode-83xxxxx.csv
110
+ - data/zipcode-84xxxxx.csv
111
+ - data/zipcode-85xxxxx.csv
112
+ - data/zipcode-86xxxxx.csv
113
+ - data/zipcode-87xxxxx.csv
114
+ - data/zipcode-88xxxxx.csv
115
+ - data/zipcode-89xxxxx.csv
116
+ - data/zipcode-90xxxxx.csv
117
+ - data/zipcode-91xxxxx.csv
118
+ - data/zipcode-92xxxxx.csv
119
+ - data/zipcode-93xxxxx.csv
120
+ - data/zipcode-94xxxxx.csv
121
+ - data/zipcode-95xxxxx.csv
122
+ - data/zipcode-96xxxxx.csv
123
+ - data/zipcode-97xxxxx.csv
124
+ - data/zipcode-98xxxxx.csv
125
+ - lib/zipcode_ja.rb
126
+ - lib/zipcode_ja/string.rb
127
+ - lib/zipcode_ja/version.rb
128
+ - spec/spec_helper.rb
129
+ - spec/zipcode_ja_spec.rb
130
+ - zipcode_ja.gemspec
131
+ homepage: https://github.com/mizoR/zipcode_ja
132
+ licenses: []
133
+ post_install_message:
134
+ rdoc_options: []
135
+ require_paths:
136
+ - lib
137
+ required_ruby_version: !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ! '>='
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ required_rubygems_version: !ruby/object:Gem::Requirement
144
+ none: false
145
+ requirements:
146
+ - - ! '>='
147
+ - !ruby/object:Gem::Version
148
+ version: '0'
149
+ requirements: []
150
+ rubyforge_project:
151
+ rubygems_version: 1.8.23
152
+ signing_key:
153
+ specification_version: 3
154
+ summary: Convert a zipcode to region.
155
+ test_files:
156
+ - spec/spec_helper.rb
157
+ - spec/zipcode_ja_spec.rb