We are replacing the search and indexing module in an application from DtSearch to Solr using solrnet as the .net Solr client library.
We are relatively new to Solr/Lucene and would need some help/direction to understand the more advanced search options in Solr.
The current application supports the following search options using DtSearch:
1)Word(s) or phrase
2)Exact words or phrases
3)Not these words or phrases
4)One or more of words("A" OR "B" OR "C")
5)Proximity of word with n words of another word
6)Numeric range - From - To
7)Option
. Stemming(search* finds searching or searches)
. Synonym(search& finds seek or look)
. Fuzzy within n letters(p%arts finds paris)
. Phonic homonyms(#Smith also finds Smithe and Smythe)
As an example the search query that gets generated to be posted to DtSearch for the below use case:
Search Phrase: generic collection
Exact Phrase: linq
Not these words: sql
One or more of these words: ICollection or ArrayList or Hashtable
Proximity: csharp within 4 words of language
Options:
a. Stemming
b. Synonym
c. Fuzzy within 2 letters
d. Phonic homonyms
Search Query: generic* collection* generic& collection& #generic #collection g%%eneric c%%ollection "linq" -sql ICollection OR ArrayList OR Hashtable csharp w/4 language
We have been able to do simple searches(singular term search in a file content) with highlights with Solr. Now we need to replace these options with Solr/Lucene.
Can anybody provide some directions on what/where should we be looking.