In solr , I have text as like below format.

1s: This is very nice day. 4s: Christmas is about to come 7s: and christmas
preparation is just on 12s: this is awesome!! 

I want that words like '1s:' , '4s:' , anything like 'ns:' should not be
indexed and searchable, to do so I have added stop words filter in my text
field definition. 

below is the my field type defination 
-----------------------------------
 <fieldType name="text_en_splitting" class="solr.TextField"
positionIncrementGap="100" autoGeneratePhraseQueries="true">
      <analyzer type="index">
        <filter class="solr.StopFilterFactory"
                ignoreCase="true"
                words="stopwords.txt"
                enablePositionIncrements="true"
                />

        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.SynonymFilterFactory"
synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
        <filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1" catenateWords="1"
catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt"/>
        <filter class="solr.PorterStemFilterFactory"/>
      </analyzer>
      <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt"
ignoreCase="true" expand="true"/>
        <filter class="solr.StopFilterFactory"
                ignoreCase="true"
                words="stopwords.txt"
                enablePositionIncrements="true"
                />
        <filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1" generateNumberParts="1" catenateWords="0"
catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt"/>
        <filter class="solr.PorterStemFilterFactory"/>
      </analyzer>
    </fieldType>


and stopwords.txt field contains words 
-------------------
1s:
2s:
... 
...
... 
10000s:

----------------------
when i search for with q="109s:" , it returns 0 results, but if i search for
"109s" , then it should also return 0 results. but surprisingly solr not
doing so!! , and returning results having "190s:"  in text. 

I understand that , if words "109s:" is not indexed, thus "190s" also not
indexed. and as word "190s" is not there in index, it should not return
results for that. 

But solr is not looking to behave so, can anybody explain me of this
behavior. and if any changes i should do to fulfill my requirement 

Thanks




--
View this message in context: 
http://lucene.472066.n3.nabble.com/Solr-Stopwords-at-query-time-tp4055249.html
Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to