diff options
author | Alex Zolotarev <alex@maps.me> | 2016-02-26 21:10:51 +0300 |
---|---|---|
committer | Sergey Yershov <yershov@corp.mail.ru> | 2016-03-23 16:49:33 +0300 |
commit | 121417c776bb7fd507520c381d36cc1d692a8d01 (patch) | |
tree | f62e65c2c562fa9dcb206c71971dda5c7fc7d621 /indexer/search_string_utils.cpp | |
parent | 48c686fb1620e8c776fd4738f81f6933d0924460 (diff) |
search::Contains with normalization.
Diffstat (limited to 'indexer/search_string_utils.cpp')
-rw-r--r-- | indexer/search_string_utils.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/indexer/search_string_utils.cpp b/indexer/search_string_utils.cpp index f955c1fb79..1839e90dd2 100644 --- a/indexer/search_string_utils.cpp +++ b/indexer/search_string_utils.cpp @@ -112,3 +112,10 @@ bool search::IsStreetSynonym(strings::UniString const & s) make_transform_iterator(affics + ARRAY_SIZE(affics), &search::NormalizeAndSimplifyString)); return kSynonyms.count(s) != 0; } + +bool search::ContainsNormalized(string const & str, string const & substr) +{ + strings::UniString const ustr = search::NormalizeAndSimplifyString(str); + strings::UniString const usubstr = search::NormalizeAndSimplifyString(substr); + return std::search(ustr.begin(), ustr.end(), usubstr.begin(), usubstr.end()) != ustr.end(); +} |