words-to-numbers 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +1 -1
- data/lib/words-to-numbers/version.rb +1 -1
- data/lib/words-to-numbers.rb +2 -3
- data/words-to-numbers.gemspec +33 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6d4e2deb152a4a25f5abfd8408a9e045e259fdfcb5629cc242bab1f09070ef59
|
4
|
+
data.tar.gz: 636afa1bb92764f070dfcc16c4ec9cb57601737a61870f1388358df464ef2430
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bbd34690f468825348d3c0bf2013dd4511207f4969bf853eb5187ba5773a770fdebb36781722dffa1fb02f1949fb1831f186330a0b9c0d135a4a0a0f80f93671
|
7
|
+
data.tar.gz: 8e5a51f3a2b1507d148a1017e38cc73ddbb92a7ec24610b6619a4d34bed33dd5140867f46e2d9a31641ea5cb15b5250b2cb71caec137e4aa468dcaeb49758ebd
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/lib/words-to-numbers.rb
CHANGED
@@ -16,13 +16,12 @@ module WordsToNumbers
|
|
16
16
|
BLACKLIST_SINGULAR_WORDS = ['a']
|
17
17
|
|
18
18
|
def self.translate_words_to_numbers(text)
|
19
|
-
pattern = /(?:\d+|\b(?:#{ALL_WORDS.keys.join('|')})\b|\p{
|
19
|
+
pattern = /(?:\d+|\b(?:#{ALL_WORDS.keys.join('|')})\b|\p{N})/i
|
20
20
|
numbers = []
|
21
21
|
|
22
|
-
text.
|
22
|
+
text.scan(pattern) do |match|
|
23
23
|
match = match.to_s.downcase
|
24
24
|
if ALL_WORDS.keys.include?(match.to_s)
|
25
|
-
|
26
25
|
number = ALL_WORDS[match]
|
27
26
|
numbers << number if number && !BLACKLIST_SINGULAR_WORDS.include?(match)
|
28
27
|
else
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "lib/words-to-numbers/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |spec|
|
6
|
+
spec.name = "words-to-numbers"
|
7
|
+
spec.version = WordsToNumbers::VERSION
|
8
|
+
spec.authors = ["Niko Roberts"]
|
9
|
+
spec.email = ["niko@tasboa.com"]
|
10
|
+
|
11
|
+
spec.summary = "Extract numbers from words in text"
|
12
|
+
spec.description = "Extract numbers from words in text"
|
13
|
+
spec.homepage = "https://github.com/nikoroberts/words-to-numbers"
|
14
|
+
spec.license = "MIT"
|
15
|
+
spec.required_ruby_version = ">= 2.6.0"
|
16
|
+
|
17
|
+
# spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
|
18
|
+
|
19
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
20
|
+
spec.metadata["source_code_uri"] = spec.homepage
|
21
|
+
spec.metadata["changelog_uri"] = spec.homepage + "/CHANGELOG.md"
|
22
|
+
|
23
|
+
# Specify which files should be added to the gem when it is released.
|
24
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
25
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
26
|
+
`git ls-files -z`.split("\x0").reject do |f|
|
27
|
+
(f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
|
28
|
+
end
|
29
|
+
end
|
30
|
+
spec.bindir = "exe"
|
31
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
32
|
+
spec.require_paths = ["lib"]
|
33
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: words-to-numbers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Niko Roberts
|
@@ -33,6 +33,7 @@ files:
|
|
33
33
|
- lib/words-to-numbers/words/raw_numbers.yml
|
34
34
|
- lib/words-to-numbers/words/unicode.yml
|
35
35
|
- sig/words/to/numbers.rbs
|
36
|
+
- words-to-numbers.gemspec
|
36
37
|
homepage: https://github.com/nikoroberts/words-to-numbers
|
37
38
|
licenses:
|
38
39
|
- MIT
|