dwc_agent 3.0.0.9 → 3.0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/dwc_agent/constants.rb +3 -1
- data/lib/dwc_agent/parser.rb +4 -4
- data/lib/dwc_agent/version.rb +2 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 51d092e5e8f6a540e67959189827553f1b37214b855465ef69444098e9146972
|
4
|
+
data.tar.gz: 5ca4086f1bed287ec90c1afc1ce1e46f1ad6fd149f7449ca519e59f2474a918c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a255f52c83b5bfda870d3edd20187186fd3d0a6345a51dadf67a2d9dd072ec4e476a56d0fbb593e72a417a425a5a9dae2716a61dc7bd88fbf9c8350a45ff68ea
|
7
|
+
data.tar.gz: 8cb41bc6e132bcc66aa3a196bd54e48b374c7a95227c9fa13f77b856d88684978d98c72100790db244a83e65b389d162a819a8926c2d1ca8c1dad7d8c6166de4
|
data/lib/dwc_agent/constants.rb
CHANGED
@@ -124,7 +124,8 @@ module DwcAgent
|
|
124
124
|
(?i:ex\.?\s+herb\.?\s*)|
|
125
125
|
\:?\s*(?i:exch)(\b|\z)|
|
126
126
|
\s+de\s*$|
|
127
|
-
\.{2,}
|
127
|
+
\.{2,}$|
|
128
|
+
\[|\]
|
128
129
|
}x
|
129
130
|
|
130
131
|
SPLIT_BY = %r{
|
@@ -200,6 +201,7 @@ module DwcAgent
|
|
200
201
|
"^(\\S{4,},\\s+(?:\\S\\.\\s*){1,})\\s+(\\S{4,},\\s+(?:\\S\.\\s*){1,})$" => "\\1 | \\2",
|
201
202
|
"(\\S{1}\\.)([[:alpha:]]{2,})" => "\\1 \\2",
|
202
203
|
"([[:alpha:]]*),?\\s+(.*)\\s+(van|von)$" => "\\3 \\1, \\2",
|
204
|
+
"^([A-Z.\\s]+)\\s+(?:and|&|et|e)\\s+([A-Z.\\s]+)\\s+([[:alpha:]]{2,})\\s+([[:alpha:]]{2,})$" => "\\1 \\4 | \\2 \\3 \\4",
|
203
205
|
"^([A-Z.\\s]+)\\s+(?:and|&|et|e)\\s+([A-Z.\\s]+)\\s+([[:alpha:]]{2,})(.*)" => "\\1 \\3 | \\2 \\3 | \\4",
|
204
206
|
"^([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,})\\s*?[,&]\\s*?([A-Z][[:alpha:]]{2,})$" => "\\1 | \\2 | \\3",
|
205
207
|
"^([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,}),\\s*?([A-Z][[:alpha:]]{2,})\\s*?[,&]\\s*?([A-Z][[:alpha:]]{3,})$" => "\\1 | \\2 | \\3 | \\4",
|
data/lib/dwc_agent/parser.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
module DwcAgent
|
2
|
+
|
2
3
|
class Parser
|
3
4
|
|
4
5
|
class << self
|
@@ -20,6 +21,7 @@ module DwcAgent
|
|
20
21
|
@char_subs_regex = Regexp.new [CHAR_SUBS.keys.join].to_s
|
21
22
|
@phrase_subs_regex = Regexp.new PHRASE_SUBS.keys.map{|a| Regexp.escape a }.join('|').to_s
|
22
23
|
@residual_terminators_regex = Regexp.new SPLIT_BY.to_s + %r{\s*\z}.to_s
|
24
|
+
@separators = SEPARATORS.map{|k,v| [ Regexp.new(k), v] }
|
23
25
|
end
|
24
26
|
|
25
27
|
# Parses the passed-in string and returns a list of names.
|
@@ -29,10 +31,8 @@ module DwcAgent
|
|
29
31
|
def parse(name)
|
30
32
|
return [] if name.nil? || name == ""
|
31
33
|
name.gsub!(@strip_out_regex, ' ')
|
32
|
-
name.gsub!(
|
33
|
-
name.gsub!(
|
34
|
-
name.gsub!(@phrase_subs_regex, PHRASE_SUBS)
|
35
|
-
SEPARATORS.each{|key, value| name.gsub!(Regexp.new(key), value)}
|
34
|
+
name.gsub!(Regexp.union(@char_subs_regex, @phrase_subs_regex), CHAR_SUBS.merge(PHRASE_SUBS))
|
35
|
+
@separators.each{|k| name.gsub!(k[0], k[1])}
|
36
36
|
name.gsub!(@residual_terminators_regex, '')
|
37
37
|
name.squeeze!(' ')
|
38
38
|
name.strip!
|
data/lib/dwc_agent/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dwc_agent
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David P. Shorthouse
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: namae
|
@@ -119,7 +119,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
119
119
|
- !ruby/object:Gem::Version
|
120
120
|
version: '0'
|
121
121
|
requirements: []
|
122
|
-
rubygems_version: 3.
|
122
|
+
rubygems_version: 3.3.17
|
123
123
|
signing_key:
|
124
124
|
specification_version: 4
|
125
125
|
summary: Parse Darwin Core agent terms such as recordedBy and identifiedBy
|