Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

LibIndic Inexact Search

Build Status Coverage Status

LibIndic's inexactsearch module is a Fuzzy string search. This application illustrates the combined use of Edit distance and Indic Soundex algorithm.

By mixing both written like(edit distance) and sounds like(soundex), we achieve an efficient aproximate string searching. This application is capable of cross language string search too. That means, you can search Hindi words in Malayalam text. If there is any Malayalam word, which is approximate transliteration of hindi word, or sounds alike the hindi words, it will be returned as an approximate match. The "written like" algorithm used here is a bigram average algorithm. The ratio of common bigrams in two strings and average number of bigrams will give a factor which is greater than zero and less than 1. Similarly the soundex algorithm also gives a weight. By selecting words which has comparison weight more than the threshold weight(which 0.6), we get the search results.


  1. Clone the repository git clone
  2. Change to the cloned directory cd inexactsearch
  3. Run to create installable source python sdist
  4. Install using pip pip install dist/libindic-inexactsearch*.tar.gz


>>> from libindic.inexactsearch import InexactSearch
>>> instance = InexactSearch()
>>> result ="कालडी केरल के एर्नाकुलम जिले में पेरियार नदी के पूर्व में स्थित एक गाँव है", u"കാലടി")
>>> matches = [word for word, similarity in result.items() if similarity > 0.8]
>>> for match in matches:
...     print(match)

For more details read the docs


Fuzzy string search for Indian languages



No packages published
You can’t perform that action at this time.