Hi Jack,

I am planning to extract and publish such words for Turkish language. But I am 
not sure how to utilize them.

I wonder if there is a more flexible solution that will work query time only. 
That would not require reindexing every time a new item is added. 

Ahmet


On Friday, April 18, 2014 1:47 PM, Jack Krupansky <j...@basetechnology.com> 
wrote:
Use an index-time synonym filter with a synonym entry:

indira nagar,indiranagar

But do not use that same filter at query time.

But, that may mess up some exact phrase queries, such as:

q="indiranagar xyz"

since the following term is actually positioned after the longest synonym.

To resolve that, use a sloppy phrase:

q="indiranagar xyz"~1

Or, set qs=1 for the edismax query parser.

-- Jack Krupansky


-----Original Message----- 
From: kumar
Sent: Friday, April 18, 2014 6:34 AM
To: solr-user@lucene.apache.org
Subject: space between search terms

Hi,

I Have a field called "title". It is having a values called "indira nagar"
as well as "indiranagar".

If i type any of the keywords it has to display both results.

Can anybody help how can we do this?


I am using the title field in the following way:

<fieldType name="title" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-ISOLatin1Accent.txt" />
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1"
generateNumberParts="1"
catenateWords="1"
catenateNumbers="1"
catenateAll="1"
splitOnCaseChange="1"
splitOnNumerics="1"
preserveOriginal="1" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.PatternReplaceFilterFactory"
pattern="([^\w\d\*æøåÆØÅ ])" replacement=" " replace="all" />
<filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt" enablePositionIncrements="true" />

</analyzer>
<analyzer type="query">
<charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-ISOLatin1Accent.txt" />
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory"
generateWordParts="1"
generateNumberParts="1"
catenateWords="1"
catenateNumbers="1"
catenateAll="1"
splitOnCaseChange="1"
splitOnNumerics="1"
preserveOriginal="1"/>
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.PatternReplaceFilterFactory"
pattern="([^\w\d\*æøåÆØÅ ])" replacement=" " replace="all" />
<filter class="solr.SynonymFilterFactory" ignoreCase="true"
synonyms="synonyms_tf.txt" expand="true" />
<filter class="solr.StopFilterFactory" ignoreCase="true"
words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt" />
                <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
</fieldType>



--
View this message in context: 
http://lucene.472066.n3.nabble.com/space-between-search-terms-tp4131967.html
Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to