/** * Determines if negation terms are present in the search phrase. * * @param indexSearchRequest the {@link IndexSearchRequest} as specified * * @return true if present */ public boolean determineNegationTermsPresent(final IndexSearchRequest indexSearchRequest) { final Matcher regexMatcher = getNegationTermMatcher(indexSearchRequest); return regexMatcher.find(); }
/** * Determines if negation terms are present in the search phrase. * * @param indexSearchRequest the {@link IndexSearchRequest} as specified * * @return true if present */ public boolean determineNegationTermsPresent(final IndexSearchRequest indexSearchRequest) { final Matcher regexMatcher = getNegationTermMatcher(indexSearchRequest); return regexMatcher.find(); }
/** * Helper to extract negation terms from a given search query. * * @param indexSearchRequest the {@link IndexSearchRequest} as specified * * @return A {@link List} of type {@link String} */ public List<String> extractNegationTerms(final IndexSearchRequest indexSearchRequest) { final Matcher regexMatcher = getNegationTermMatcher(indexSearchRequest); final List<String> negationTerms = new ArrayList<>(); while (regexMatcher.find()) { // extract all matches and return only the words negationTerms.add(regexMatcher.group().replaceAll("-", "").trim()); } return negationTerms; }
/** * Helper to extract negation terms from a given search query. * * @param indexSearchRequest the {@link IndexSearchRequest} as specified * * @return A {@link List} of type {@link String} */ public List<String> extractNegationTerms(final IndexSearchRequest indexSearchRequest) { final Matcher regexMatcher = getNegationTermMatcher(indexSearchRequest); final List<String> negationTerms = new ArrayList<>(); while (regexMatcher.find()) { // extract all matches and return only the words negationTerms.add(regexMatcher.group().replaceAll("-", "").trim()); } return negationTerms; }
/** * Helper to clean the search phrase of negation terms. * * @param indexSearchRequest the {@link IndexSearchRequest} as specified * * @return A {@link String} without the negation terms */ public String extractSearchPhrase(final IndexSearchRequest indexSearchRequest) { final Matcher regexMatcher = getNegationTermMatcher(indexSearchRequest); String searchPhrase = indexSearchRequest.getSearchTerm(); while (regexMatcher.find()) { // extract all matches and remove them from the original search phrase searchPhrase = searchPhrase.replace(regexMatcher.group(), StringUtils.EMPTY); } return searchPhrase.trim(); }
/** * Helper to clean the search phrase of negation terms. * * @param indexSearchRequest the {@link IndexSearchRequest} as specified * * @return A {@link String} without the negation terms */ public String extractSearchPhrase(final IndexSearchRequest indexSearchRequest) { final Matcher regexMatcher = getNegationTermMatcher(indexSearchRequest); String searchPhrase = indexSearchRequest.getSearchTerm(); while (regexMatcher.find()) { // extract all matches and remove them from the original search phrase searchPhrase = searchPhrase.replace(regexMatcher.group(), StringUtils.EMPTY); } return searchPhrase.trim(); }