syamei 0.1.0 → 0.1.1
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 +4 -4
- data/lib/data/notations.yml +37 -130
- data/lib/syamei.rb +27 -22
- data/lib/syamei/version.rb +1 -1
- metadata +2 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ad9bfdd1a3f854766e0ea4074d02c270408c69cf6ecd60b9ba97369a1895e24a
|
4
|
+
data.tar.gz: 5f2f1a78e9ace3727db62a4d2391c11b52a00eac34b904c18cebcdf368ce3296
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 48511983df0b6b100974f2f96fba6db27691755cb92498763a0b299edf5d2cb17aecfc593d286d700e7507929e303867f88e0603fff42733a2341c7cdd2a75af
|
7
|
+
data.tar.gz: 239740786c955db32ce450f92b689ef3a67c416e25221f6fd6eab24219b46aba6cdeab5832dadaec39aa81d88727825c0f8675f0b1773d75cca23a883b6bf0d3
|
data/lib/data/notations.yml
CHANGED
@@ -1,131 +1,38 @@
|
|
1
1
|
notations:
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
abbreviation:
|
40
|
-
- '㈱'
|
41
|
-
- '\(株\)'
|
42
|
-
- '㈲'
|
43
|
-
- '\(有\)'
|
44
|
-
- '\(名\)'
|
45
|
-
- '\(資\)'
|
46
|
-
- '\(同\)'
|
47
|
-
- '\(医\)'
|
48
|
-
- '\(財\)'
|
49
|
-
- '\(一財\)'
|
50
|
-
- '\(公財\)'
|
51
|
-
- '\(社\)'
|
52
|
-
- '\(一社\)'
|
53
|
-
- '\(公社\)'
|
54
|
-
- '\(宗\)'
|
55
|
-
- '\(学\)'
|
56
|
-
- '\(福\)'
|
57
|
-
- '\(相\)'
|
58
|
-
- '\(特非\)'
|
59
|
-
- '\(独\)'
|
60
|
-
- '\(地独\)'
|
61
|
-
- '\(弁\)'
|
62
|
-
- '\(行\)'
|
63
|
-
- '\(司\)'
|
64
|
-
- '\(税\)'
|
65
|
-
- '\(中\)'
|
66
|
-
- '\(大\)'
|
67
|
-
- '\(営\)'
|
68
|
-
- '\(出\)'
|
69
|
-
kana:
|
70
|
-
- 'カ\)'
|
71
|
-
- '\(カ\)'
|
72
|
-
- '\(カ'
|
73
|
-
- 'ユ\)'
|
74
|
-
- '\(ユ\)'
|
75
|
-
- '\(ユ'
|
76
|
-
- 'メ\)'
|
77
|
-
- '\(メ\)'
|
78
|
-
- '\(メ'
|
79
|
-
- 'シ\)'
|
80
|
-
- '\(シ\)'
|
81
|
-
- '\(シ'
|
82
|
-
- 'ド\)'
|
83
|
-
- '\(ド\)'
|
84
|
-
- '\(ド'
|
85
|
-
- 'シユウ\)'
|
86
|
-
- 'ガク\)'
|
87
|
-
- 'フク\)'
|
88
|
-
- 'ホゴ\)'
|
89
|
-
- '\(ホゴ\)'
|
90
|
-
- '\(ホゴ'
|
91
|
-
- 'ソ\)'
|
92
|
-
- '\(ソ\)'
|
93
|
-
- '\(ソ'
|
94
|
-
- 'トクヒ\)'
|
95
|
-
- '\(トクヒ\)'
|
96
|
-
- '\(トクヒ'
|
97
|
-
- 'ドク\)'
|
98
|
-
- '\(ドク\)'
|
99
|
-
- '\(ドク'
|
100
|
-
- 'チドク\)'
|
101
|
-
- '\(チドク\)'
|
102
|
-
- '\(チドク'
|
103
|
-
- 'ベン\)'
|
104
|
-
- '\(ベン\)'
|
105
|
-
- '\(ベン'
|
106
|
-
- 'ギヨ\)'
|
107
|
-
- '\(ギヨ\)'
|
108
|
-
- '\(ギヨ'
|
109
|
-
- 'シホウ\)'
|
110
|
-
- '\(シホウ\)'
|
111
|
-
- '\(シホウ'
|
112
|
-
- 'ゼイ\)'
|
113
|
-
- '\(ゼイ\)'
|
114
|
-
- '\(ゼイ'
|
115
|
-
- 'ノウ\)'
|
116
|
-
- '\(ノウ\)'
|
117
|
-
- '\(ノウ'
|
118
|
-
- 'カンリ\)'
|
119
|
-
- '\(カンリ\)'
|
120
|
-
- '\(カンリ'
|
121
|
-
- 'ロウム\)'
|
122
|
-
- '\(ロウム\)'
|
123
|
-
- '\(ロウム'
|
124
|
-
- '\(ダイ\)'
|
125
|
-
- '\(ダイ'
|
126
|
-
- 'エイ\)'
|
127
|
-
- '\(エイ\)'
|
128
|
-
- '\(エイ'
|
129
|
-
- 'シユツ\)'
|
130
|
-
- '\(シユツ\)'
|
131
|
-
- '\(シユツ'
|
2
|
+
- ['出張所', '', '\(出\)', 'シユツ\)', '\(シユツ\)', '\(シユツ']
|
3
|
+
- ['管理組合法人', '', '', 'カンリ\)', '\(カンリ\)', '\(カンリ']
|
4
|
+
- ['司法書士法人', '', '\(司\)', 'シホウ\)', '\(シホウ\)', '\(シホウ']
|
5
|
+
- ['独立行政法人', '', '\(独\)', 'ドク\)', '\(ドク\)', '\(ドク']
|
6
|
+
- ['株式会社', '㈱', '\(株\)', 'カ\)', '\(カ\)', '\(カ']
|
7
|
+
- ['有限会社', '㈲', '\(有\)', 'ユ\)', '\(ユ\)', '\(ユ']
|
8
|
+
- ['合名会社', '', '\(名\)', 'メ\)', '\(メ\)', '\(メ']
|
9
|
+
- ['合資会社', '', '\(資\)', 'シ\)', '\(シ\)', '\(シ']
|
10
|
+
- ['合同会社', '', '\(同\)', 'ド\)', '\(ド\)', '\(ド']
|
11
|
+
- ['医療法人社団', '', '\(医\)', 'イ\)', '', '\(イ']
|
12
|
+
- ['医療法人財団', '', '\(医\)', 'イ\)', '', '\(イ']
|
13
|
+
- ['医療法人', '', '\(医\)', 'イ\)', '', '\(イ']
|
14
|
+
- ['社会医療法人', '', '\(医\)', 'イ\)', '', '\(イ']
|
15
|
+
- ['財団法人', '', '\(財\)', 'ザイ\)', '', '']
|
16
|
+
- ['一般財団法人', '', '\(一財\)', 'ザイ\)', '', '']
|
17
|
+
- ['公益財団法人', '', '\(公財\)', 'ザイ\)', '', '']
|
18
|
+
- ['社団法人', '', '\(社\)', 'シヤ\)', '', '']
|
19
|
+
- ['一般社団法人', '', '\(一社\)', 'シヤ\)', '', '']
|
20
|
+
- ['公益社団法人', '', '\(公社\)', 'シヤ\)', '', '']
|
21
|
+
- ['宗教法人', '', '\(宗\)', '', '', '']
|
22
|
+
- ['学校法人', '', '\(学\)', 'ガク\)', '', '']
|
23
|
+
- ['社会福祉法人', '', '\(福\)', 'フク\)', '', '']
|
24
|
+
- ['更生保護法人', '', '', 'ホゴ\)', '\(ホゴ\)', '\(ホゴ']
|
25
|
+
- ['相互会社', '', '\(相\)', 'ソ\)', '\(ソ\)', '\(ソ']
|
26
|
+
- ['特定非営利活動法人', '', '\(特非\)', 'トクヒ\)', '\(トクヒ\)', '\(トクヒ']
|
27
|
+
- ['地方独立行政法人', '', '\(地独\)', 'チドク\)', '\(チドク\)', '\(チドク']
|
28
|
+
- ['弁護士法人', '', '\(弁\)', 'ベン\)', '\(ベン\)', '\(ベン']
|
29
|
+
- ['有限責任中間法人', '', '\(中\)', 'チユウ\)', '\(チユウ\)', '\(チユウ']
|
30
|
+
- ['無限責任中間法人', '', '\(中\)', 'チユウ\)', '\(チユウ\)', '\(チユウ']
|
31
|
+
- ['行政書士法人', '', '\(行\)', 'ギヨ\)', '\(ギヨ\)', '\(ギヨ']
|
32
|
+
- ['税理士法人', '', '\(税\)', 'ゼイ\)', '\(ゼイ\)', '\(ゼイ']
|
33
|
+
- ['国立大学法人', '', '\(大\)', 'ダイ\)', '\(ダイ\)', '\(ダイ']
|
34
|
+
- ['公立大学法人', '', '\(大\)', 'ダイ\)', '\(ダイ\)', '\(ダイ']
|
35
|
+
- ['農事組合法人', '', '', 'ノウ\)', '\(ノウ\)', '\(ノウ']
|
36
|
+
- ['社会保険労務士法人', '', '', 'ロウム\)', '\(ロウム\)', '\(ロウム']
|
37
|
+
- ['営業所', '', '\(営\)', 'エイ\)', '\(エイ\)', '\(エイ']
|
38
|
+
|
data/lib/syamei.rb
CHANGED
@@ -4,21 +4,34 @@ require 'yaml'
|
|
4
4
|
module Syamei
|
5
5
|
class Error < StandardError; end
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
|
7
|
+
DATA = YAML.load_file(File.expand_path(File.join('..', 'data', 'notations.yml'), __FILE__))['notations']
|
8
|
+
NOTATION = DATA.map { |n| n[0] }.compact.reject(&:empty?).flatten.uniq
|
9
|
+
SPECIAL = DATA.map { |n| n[1] }.compact.reject(&:empty?).flatten.uniq
|
10
|
+
ABBREVIATION = DATA.map { |n| n[2] }.compact.reject(&:empty?).flatten.uniq
|
11
|
+
KANA_HEAD = DATA.map { |n| n[3] }.compact.reject(&:empty?).flatten.uniq
|
12
|
+
KANA_MIDDLE = DATA.map { |n| n[4] }.compact.reject(&:empty?).flatten.uniq
|
13
|
+
KANA_TAIL = DATA.map { |n| n[5] }.compact.reject(&:empty?).flatten.uniq
|
10
14
|
|
11
15
|
COMPLEX_TYPE = {
|
12
|
-
0 =>
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
+
0 => {
|
17
|
+
all: [NOTATION, SPECIAL, ABBREVIATION, KANA_HEAD, KANA_TAIL].join('|'),
|
18
|
+
head: [NOTATION, SPECIAL, ABBREVIATION, KANA_HEAD].join('|'),
|
19
|
+
tail: [NOTATION, SPECIAL, ABBREVIATION, KANA_TAIL].join('|')
|
20
|
+
},
|
21
|
+
1 => NOTATION.join('|'),
|
22
|
+
2 => SPECIAL.join('|'),
|
23
|
+
3 => {
|
24
|
+
all: KANA_TAIL.join('|'),
|
25
|
+
head: KANA_HEAD.join('|'),
|
26
|
+
tail: KANA_TAIL.join('|')
|
27
|
+
}
|
16
28
|
}.freeze
|
17
29
|
|
18
30
|
# 前株の存在チェック
|
19
31
|
def self.with_beginning?(name, type = 0)
|
20
32
|
return false if name.nil? || name.empty?
|
21
33
|
|
34
|
+
return name.match?(/^(#{COMPLEX_TYPE[type][:head]}).*$/) if type.zero? || type == 3
|
22
35
|
name.match?(/^(#{COMPLEX_TYPE[type]}).*$/)
|
23
36
|
end
|
24
37
|
|
@@ -26,6 +39,7 @@ module Syamei
|
|
26
39
|
def self.with_end?(name, type = 0)
|
27
40
|
return false if name.nil? || name.empty?
|
28
41
|
|
42
|
+
return name.match?(/.*(#{COMPLEX_TYPE[type][:tail]})$/) if type.zero? || type == 3
|
29
43
|
name.match?(/.*(#{COMPLEX_TYPE[type]})$/)
|
30
44
|
end
|
31
45
|
|
@@ -40,6 +54,7 @@ module Syamei
|
|
40
54
|
def self.with_beginning(name, type = 0)
|
41
55
|
return nil if name.nil? || name.empty?
|
42
56
|
|
57
|
+
return name.gsub(/(#{COMPLEX_TYPE[type][:tail]})$/, '').strip if type.zero? || type == 3
|
43
58
|
name.gsub(/(#{COMPLEX_TYPE[type]})$/, '').strip
|
44
59
|
end
|
45
60
|
|
@@ -47,6 +62,7 @@ module Syamei
|
|
47
62
|
def self.with_end(name, type = 0)
|
48
63
|
return nil if name.nil? || name.empty?
|
49
64
|
|
65
|
+
return name.gsub(/^(#{COMPLEX_TYPE[type][:head]})/, '').strip if type.zero? || type == 3
|
50
66
|
name.gsub(/^(#{COMPLEX_TYPE[type]})/, '').strip
|
51
67
|
end
|
52
68
|
|
@@ -59,25 +75,14 @@ module Syamei
|
|
59
75
|
name
|
60
76
|
end
|
61
77
|
|
62
|
-
# 前株と後株の置換
|
63
|
-
# def self.replace_begin_to_end(name, type=0)
|
64
|
-
# # notation
|
65
|
-
# # 前株消す
|
66
|
-
# # 後株に付与
|
67
|
-
# end
|
68
|
-
|
69
|
-
# 後株と前株の置換
|
70
|
-
# def self.replace_end_to_begin(name, type=0)
|
71
|
-
# # notation
|
72
|
-
# # 後株消す
|
73
|
-
# # 前株に付与
|
74
|
-
# end
|
75
|
-
|
76
78
|
def self.notation(name, type = 0)
|
79
|
+
return nil if name.nil? || name.empty?
|
80
|
+
|
81
|
+
return name[/(#{COMPLEX_TYPE[type][:all]})/, 1] if type.zero? || type == 3
|
77
82
|
name[/(#{COMPLEX_TYPE[type]})/, 1]
|
78
83
|
end
|
79
84
|
|
80
85
|
def self.list
|
81
|
-
COMPLEX_TYPE[0].gsub('|', ' ').gsub('\\', '')
|
86
|
+
COMPLEX_TYPE[0][:all].gsub('|', ' ').gsub('\\', '')
|
82
87
|
end
|
83
88
|
end
|
data/lib/syamei/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: syamei
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shuhei Yamashita
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-07-
|
11
|
+
date: 2020-07-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -61,11 +61,6 @@ extra_rdoc_files: []
|
|
61
61
|
files:
|
62
62
|
- ".gitignore"
|
63
63
|
- ".idea/.gitignore"
|
64
|
-
- ".idea/inspectionProfiles/Project_Default.xml"
|
65
|
-
- ".idea/misc.xml"
|
66
|
-
- ".idea/modules.xml"
|
67
|
-
- ".idea/syamei.iml"
|
68
|
-
- ".idea/vcs.xml"
|
69
64
|
- ".rakeTasks"
|
70
65
|
- ".rspec"
|
71
66
|
- ".ruby-version"
|