Example #1
0
import LoadHelper
str1 = "sadness"
str2 = "straw"
#str1 = "kitten"
#str2 = "sitting"

alphabet = list(string.ascii_lowercase)

matrix = PR.build_scoring_matrix(alphabet, 2 ,1, 0)
alig = PR.compute_alignment_matrix(str1, str2, matrix, True)
res = PR.compute_global_alignment(str1, str2, matrix, alig)
#print res

#print "EDIT dist = ", len(str1)+len(str2)-res[0]

word_list = LoadHelper.read_words(LoadHelper.WORD_LIST_URL)
#print "WL = ", word_list

def check_spelling(checked_word, dist, word_list):
    matrix = PR.build_scoring_matrix(alphabet, 2 ,1, 0)
    retlist = []
    str1 = checked_word
    for ith in word_list:
        str2 = ith
        alig = PR.compute_alignment_matrix(str1, str2, matrix, True)
        res = PR.compute_global_alignment(str1, str2, matrix, alig)
        edit_dist = len(str1)+len(str2)-res[0]
        if edit_dist <= dist:
            retlist.append(str2)
    return retlist