//Method to create document private static Document createDocumentTextField(HashMap<String, String> fields) { Document document = new Document(); for (String key : fields.keySet()) { String val = fields.get(key); Field f = new TextField(key, val, Field.Store.YES); TokenStream result = getTokenStreamByVal(val); f.setTokenStream(result); document.add(f); } return document; }
//Method handling cleanup and return tokenStream private static TokenStream getTokenStreamByVal(String val) { final StandardTokenizer source = new StandardTokenizer(); String NEGATION_PATTERN = "\\b(non|anti)( )"; Pattern negationPattern = Pattern.compile(NEGATION_PATTERN,Pattern.CASE_INSENSITIVE); String cleanedVal = return negationPattern.matcher(input).replaceAll("$1"); source.setReader(new StringReader(StringUtil.cleanNegationSearchPrefix(val))); TokenStream result = new StandardFilter(source); //Add as many filters as required for your specific requirements return result; } -- Sent from: https://lucene.472066.n3.nabble.com/Lucene-Java-Users-f532864.html --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org