lucene全文检索的字符处理
我想在搜索框输入#%&+\这类的字符,数据库中有,我想查到,怎么处理?之前找到一个转义的方法,不报错但是查不到,我用java做的,
我的转义方法是
public static String transformSolrMetacharactor(String input){
StringBuffer sb = new StringBuffer();
String regex = "[+\\-&|!(){}\\[\\]^\"~*?:(\\)]";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
while(matcher.find()){
matcher.appendReplacement(sb, "\\\\"+matcher.group());
}
matcher.appendTail(sb);
System.out.println("~~~~~~~~~~555555555~~~~~~~~~~~~~"+sb.toString());
return sb.toString();
} Lucene
补充:Java , Java EE