keyword_finder 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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 29a4c1699353c42ea411fed1cdb41f1843837ca9
4
- data.tar.gz: cd21e32c7d24ba704d01093d968e2dda3a9e0a5a
3
+ metadata.gz: 2d2ffa4c856beb883fe0de8d43583d871cbd2e99
4
+ data.tar.gz: 98555a484aad026fd7a343ec8eda923b878a0625
5
5
  SHA512:
6
- metadata.gz: c6fa048442a34fd8e5d75bccf2d21cdb388c54f3fa6582e9f280b748b630aa79ae2aa1cb423dc2eee1a763198dc8c1097ff26f4bcd3ba023f2779db34f613129
7
- data.tar.gz: 52ee884cbe1cc475e09884beea43acf28a172f9c485d774153347263f38542083b70d54257da447e426dfe1e54626fe43436bc441de934c71d1683465f3c6876
6
+ metadata.gz: 9f95f4ae6718c346ea9f54edb53abb26cec97e50e354c80484136e199be4bbeae3eb72b683f439fdb8ceeabcc8f4f2d5faeda32d23a9d2ae403e361674b9b580
7
+ data.tar.gz: 0b2f0e427bce9c4ac532f995a80bf3c3a908b0d445d028ce1fc1055b524ffec4cdbcc8db0582f781a3a7760b982735fd622683fde109f17fe8e84ed01d1dcc6d
data/.gitignore CHANGED
@@ -7,3 +7,4 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+ *.gem
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # KeywordFinder
2
2
 
3
+ [![Build Status](https://travis-ci.org/murb/keyword_finder.svg)](https://travis-ci.org/murb/keyword_finder)
4
+
3
5
  We were dealing with the following situation:
4
6
 
5
7
  Given a set of the following keywords: "aardappelen", "zachtkokende aardappelen", "zout", "schimmelkaas", "kaas", "oude harde kaas", "kikkererwten", "maïs", "bruine bonen", "shiitake", "boter"
@@ -14,6 +14,8 @@ Gem::Specification.new do |spec|
14
14
  spec.homepage = "https://murb.nl/blog?tags=keyword_finder"
15
15
  spec.license = "MIT"
16
16
 
17
+
18
+
17
19
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
20
  spec.bindir = "exe"
19
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
@@ -1,7 +1,15 @@
1
1
  module KeywordFinder
2
2
  class Keywords < Array
3
+ def ordered_by_length
4
+ self.sort{|a,b| b.length <=> a.length }
5
+ end
6
+ def escape_regex_chars string
7
+ Regexp.escape(string)
8
+ end
3
9
  def to_regex
4
- @to_regex ||= Regexp.new("(#{self.collect{|a| "\\s#{a}\\s"}.join("|")})")
10
+ @to_regex ||= Regexp.new("(#{
11
+ self.ordered_by_length.collect{|a| "\\s#{self.escape_regex_chars(a)}\\s"}.join("|")
12
+ })")
5
13
  end
6
14
 
7
15
  def scan_in sentence
@@ -20,6 +28,7 @@ module KeywordFinder
20
28
  scan_results = self.scan_in(self.clean_sentence(sentence))
21
29
  scan_results.flatten!
22
30
  scan_results.uniq!
31
+ scan_results.compact!
23
32
  results = []
24
33
  scan_results.each do |result|
25
34
  results << result.strip unless result.strip.empty?
@@ -1,3 +1,3 @@
1
1
  module KeywordFinder
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: keyword_finder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - murb
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-12-22 00:00:00.000000000 Z
11
+ date: 2015-12-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler