Skip to content
Snippets Groups Projects
Commit 800d22bb authored by tpylak's avatar tpylak
Browse files

LMS-1200 Cannot find data sets when the search query contains "-"

SVN: 13104
parent 84c061e6
No related branches found
No related tags found
No related merge requests found
......@@ -48,9 +48,6 @@ public class LuceneQueryBuilder
public static String adaptQuery(String userQuery)
{
String result = disableFieldQuery(userQuery);
result =
removeSurroundingWordSeparators(result,
SeparatorSplitterTokenFilter.WORD_SEPARATORS);
result = replaceWordSeparators(result, SeparatorSplitterTokenFilter.WORD_SEPARATORS);
return result;
}
......@@ -58,6 +55,10 @@ public class LuceneQueryBuilder
@Private
static String replaceWordSeparators(String query, char[] wordSeparators)
{
if (looksLikeNumber(query))
{
return query;
}
String queryTrimmed = removeSurroundingWordSeparators(query, wordSeparators);
String charsRegexp = createAnyWordSeparatorRegexp(wordSeparators);
String queryWithoutSeparators = queryTrimmed.replaceAll(charsRegexp, " AND ");
......@@ -70,6 +71,12 @@ public class LuceneQueryBuilder
}
}
private static boolean looksLikeNumber(String query)
{
return query.length() > 0 && Character.isDigit(query.charAt(0))
&& Character.isDigit(query.charAt(query.length() - 1));
}
private static String createAnyWordSeparatorRegexp(char[] wordSeparators)
{
String charsRegexp = "[";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment