Язык программирования Python.

Модуль difflib.

Для приблизительного сравнения двух строк в стандартной библиотеке предусмотрен модуль difflib.

Функция difflib.get_close_matches() позволяет выделить n близких строк к заданной строке:

Get_close_matches(word, possibilities, n=3, cutoff=0.6).

Где.

Word.

Строка, к которой ищутся близкие строки.

Possibilities.

Список возможных вариантов.

N.

Требуемое количество ближайших строк.

Cutoff.

Коэффициент (из диапазона [0, 1]) необходимого уровня совпадения строк. Строки, которые при сравнении с word дают меньшее значение, игнорируются.

Следующий пример показывает функцию difflib.get_close_matches() в действии:

>>> import unicodedata.

>>> names = [unicodedata.name(unicode(chr(i))) for i in range(40, 127)].

>>> print difflib.get_close_matches("LEFT BRACKET", names).

['LEFT CURLY BRACKET', 'LEFT SQUARE BRACKET'].

В списке names — названия Unicode–символов с ASCII–кодами от 40 до 127.