> we will try that and post the results here but it seems we
> may get problem with highlight function.

No highlighting works fine with that. I am also using similar filter for 
turkish chars. I replace ç with c, ş with s and so on at index time. 

Another (easier but less efficient ) way to implement this filter is to extend 
org.apache.lucene.index.memory.SynonymMap and override public String[] 
getSynonyms(String word) method. In this case your getSynonyms method will 
return either new String[0] or new String[1]. Constructor will invoke 
super(null); without problems.

After that you can use your custom SynonymMap in your Lucene's 
SynonymTokenFilter constructor. (without modifying SynonymTokenFilter)

stream = new SynonymTokenFilter(stream, new MySynonymMap(), Integer.MAX_VALUE);

Because SynonymTokenFilter invokes only getSynonyms method of SynonymMap.



Reply via email to