(self, title, ignore_groups=None)
return []
Find an entry by by fuzzy match.

        This will check things such as:

            * case insensitive matching
            * typo checks
            * prefix matches

        If the ``ignore_groups`` argument is provided, then any matching
        entries in the ``ignore_groups`` list will not be returned.  This
        argument can be used to filter out groups you are not interested in.

        Returns a list of matches (an empty list is returned if no matches are
        found).
Find an entry by by fuzzy match.
Find an entry by by fuzzy match .
def fuzzy_search_by_title(self, title, ignore_groups=None):
        """Find an entry by by fuzzy match.

        This will check things such as:

            * case insensitive matching
            * typo checks
            * prefix matches

        If the ``ignore_groups`` argument is provided, then any matching
        entries in the ``ignore_groups`` list will not be returned.  This
        argument can be used to filter out groups you are not interested in.

        Returns a list of matches (an empty list is returned if no matches are
        found).

        """
        entries = []
        # Exact matches trump
        for entry in self.entries:
            if entry.title == title:
                entries.append(entry)
        if entries:
            return self._filter_entries(entries, ignore_groups)
        # Case insensitive matches next.
        title_lower = title.lower()
        for entry in self.entries:
            if entry.title.lower() == title.lower():
                entries.append(entry)
        if entries:
            return self._filter_entries(entries, ignore_groups)
        # Subsequence/prefix matches next.
        for entry in self.entries:
            if self._is_subsequence(title_lower, entry.title.lower()):
                entries.append(entry)
        if entries:
            return self._filter_entries(entries, ignore_groups)
        # Finally close matches that might have mispellings.
        entry_map = {entry.title.lower(): entry for entry in self.entries}
        matches = difflib.get_close_matches(
            title.lower(), entry_map.keys(), cutoff=0.7)
        if matches:
            return self._filter_entries(
                [entry_map[name] for name in matches], ignore_groups)
        return []
def fuzzy_search_by_title ( self , title , ignore_groups = None ) : entries = [ ] # Exact matches trump for entry in self . entries : if entry . title == title : entries . append ( entry ) if entries : return self . _filter_entries ( entries , ignore_groups ) # Case insensitive matches next. title_lower = title . lower ( ) for entry in self . entries : if entry . title . lower ( ) == title . lower ( ) : entries . append ( entry ) if entries : return self . _filter_entries ( entries , ignore_groups ) # Subsequence/prefix matches next. for entry in self . entries : if self . _is_subsequence ( title_lower , entry . title . lower ( ) ) : entries . append ( entry ) if entries : return self . _filter_entries ( entries , ignore_groups ) # Finally close matches that might have mispellings. entry_map = { entry . title . lower ( ) : entry for entry in self . entries } matches = difflib . get_close_matches ( title . lower ( ) , entry_map . keys ( ) , cutoff = 0.7 ) if matches : return self . _filter_entries ( [ entry_map [ name ] for name in matches ] , ignore_groups ) return [ ]