diff --git a/lib/search_entries.rb b/lib/search_entries.rb index cbd9061c..9f8a605b 100644 --- a/lib/search_entries.rb +++ b/lib/search_entries.rb @@ -56,7 +56,7 @@ module SearchEntries end [sql, number, number.length > 1 ? number.delete_prefix('0') : number, keyword] - elsif keyword.match?(/[^\p{L}\d&@.\-]/) || keyword.match?(/\A['"].*['"]\z/) + elsif keyword.match?(/[^\p{L}\d&@.\-]/) || keyword.match?(/\A['"].*['"]\z/) || keyword.match?(/[.\-]{2,}/) ['tsvector @@ plainto_tsquery(?)', TextUtils.transliterate(keyword.downcase)] else keyword = TextUtils.transliterate(keyword.downcase).squish diff --git a/lib/submitters.rb b/lib/submitters.rb index d732120c..f1fcc814 100644 --- a/lib/submitters.rb +++ b/lib/submitters.rb @@ -53,7 +53,7 @@ module Submitters end [sql, number, weight, number.length > 1 ? number.delete_prefix('0') : number, weight] - elsif keyword.match?(/[^\p{L}\d&@.\-]/) + elsif keyword.match?(/[^\p{L}\d&@.\-]/) || keyword.match?(/[.\-]{2,}/) terms = TextUtils.transliterate(keyword.downcase).split(/\b/).map(&:squish).compact_blank.uniq if terms.size > 1