Homophone search, or in other words phonic search, allows you to find not only the words specified in the search query, but also their homophones, that is, words that are pronounced the same but differ in meaning.
To enable homophone search, you must set the UseHomophoneSearch property of the SearchOptions class to true. By default, homophone search is disabled. Homophone search cannot be combined with case-sensitive search. If homophone search is enabled together with case-sensitive search, or if the homophone dictionary of the index is empty, the search returns an empty result and the error is reported through the ErrorOccurred event (see Search options).
The default homophone dictionary contains homophones only for the English language. To manage the homophone dictionary, see the Homophone dictionary page in the Managing dictionaries section.
The following example demonstrates the homophone search.
C#
stringindexFolder=@"c:\MyIndex\";stringdocumentsFolder=@"c:\MyDocuments\";// Creating an index in the specified folderIndexindex=newIndex(indexFolder);// Indexing documents from the specified folderindex.Add(documentsFolder);// Creating a search options objectSearchOptionsoptions=newSearchOptions();options.UseHomophoneSearch=true;// Enabling homophone search// Search for the word 'coal'// In addition to the word 'coal', the words 'cole' and 'kohl' will also be foundSearchResultresult=index.Search("coal",options);
More resources
GitHub examples
You may easily run the code from documentation articles and see the features in action in our GitHub examples: