def __init__(self, query, lang): self.query_cased = query self.query = query.casefold() self.query_whole = ' ' + self.query + ' ' self.query_starts = ' ' + self.query self.query_simple = textfunctions.simplify_pali(self.query) self.lang = lang
def search_imm(query, lang): imm = scimm.imm() # The structure of imm.searchstrings is : # ( sutta, searchstring, searchstring_cased, suttaname simplified) # First try matching query as a whole if lang: cf_query = " " + lang + " " sm_query = None else: cf_query = query.casefold() sm_query = textfunctions.simplify_pali(query) results = set(s for s in imm.searchstrings if cf_query in s[1]) if sm_query and cf_query != sm_query: results_s = set(s for s in imm.searchstrings if sm_query in s[3]) results.update(results_s) return results