> <fieldType > name="salary_min_text" class="solr.TextField" > > <analyzer type="index"> > <charFilter > class="solr.PatternReplaceCharFilterFactory" > pattern="[^\d]?([0-9]+[k,.]?[0-9]*)+.*?([0-9]+[k,.]?[0-9]*)+.*" > replacement="$1"/> > <tokenizer > class="solr.KeywordTokenizerFactory"/> > <filter > class="solr.LowerCaseFilterFactory" /> > <filter > class="solr.TrimFilterFactory" /> > </analyzer> > <analyzer type="query"> > <charFilter > class="solr.PatternReplaceCharFilterFactory" > pattern="[^\d]?([0-9]+[k,.]?[0-9]*)+.*?([0-9]+[k,.]?[0-9]*)+.*" > replacement="$1"/> > <tokenizer > class="solr.KeywordTokenizerFactory"/> > <filter > class="solr.LowerCaseFilterFactory" /> > <filter > class="solr.TrimFilterFactory" /> > </analyzer> > </fieldType> > > <fieldType name="salary_max_text" > class="solr.TextField" > > <analyzer type="index"> > <charFilter > class="solr.PatternReplaceCharFilterFactory" > pattern="[^\d]?([0-9]+[k,.]?[0-9]*)+.*?([0-9]+[k,.]?[0-9]*)+.*" > replacement="$2"/> > <tokenizer > class="solr.KeywordTokenizerFactory"/> > <filter > class="solr.LowerCaseFilterFactory" /> > <filter > class="solr.TrimFilterFactory" /> > </analyzer> > <analyzer type="query"> > <charFilter > class="solr.PatternReplaceCharFilterFactory" > pattern="[^\d]?([0-9]+[k,.]?[0-9]*)+.*?([0-9]+[k,.]?[0-9]*)+.*" > replacement="$2"/> > <tokenizer > class="solr.KeywordTokenizerFactory"/> > <filter > class="solr.LowerCaseFilterFactory" /> > <filter > class="solr.TrimFilterFactory" /> > </analyzer> > </fieldType> > > this is the "final" version of my schema part, but what i > get is this: > > > <doc> > <float name="score">1.0</float> > <str name="salary">Negotiable</str> > <str name="salary_max">Negotiable</str> > <str name="salary_min">Negotiable</str> > </doc> > <doc> > <float name="score">1.0</float> > <str name="salary">£7 to £8 per hour</str> > <str name="salary_max">£7 to £8 per > hour</str> > <str name="salary_min">£7 to £8 per > hour</str> > </doc> > <doc> > <float name="score">1.0</float> > <str name="salary">£125 to £150 per > day</str> > <str name="salary_max">£125 to £150 per > day</str> > <str name="salary_min">£125 to £150 per > day</str> > </doc> > > which is not what i'm expecting... the regular expression > works in > http://www.fileformat.info/tool/regex.htm > without any problem
I am not good with regular expressions, but response always contains untouched/un-analyzed version of fields. You can visually test your fieldType/regex on admin/analysis.jsp page. It show indexed terms step by step.