from gravity.tae.match import lev_distance from gravity.tae import distance from gravity.tae.match.c_lev_distance import fLevDistanceDiag from gravity.tae.match.c_lev_distance import fLevPath s1 = "Test Den Haag entity" s2 = "Test Den Haag entity" m1 = fLevDistanceDiag(2).matrix(s1, s2, 111) print m1.toString(s1, s2) m2 = lev_distance.fLevDistanceDiag(2).matrix(s1, s2, 111) print m2.toString(s1, s2) print m1 == m2 p1_1 = fLevPath()(m1) p1_2 = fLevPath()(m2) print p1_1 print p1_2 p2_1 = lev_distance.fLevPath()(m1) p2_2 = lev_distance.fLevPath()(m2) print p2_1 print p2_2 print m2.toString(s1, s2, p1_2) assert m1 == m2 assert p1_1 == p1_2 and p1_2 == p2_1 and p2_1 == p2_2 ## 01234567890123456 s1 = "Test amsterdamm entity"
from gravity.tae.match import lev_distance from gravity.tae.match.c_lev_distance import fLevTextsAligner from gravity.tae.match.c_lev_distance import fLevPath from gravity.tae.match.c_lev_distance import fLevDistanceDiag ## Offsets: 01234567890123456789012345 s1 = "Test Amsterdamm entity" # original string s2 = "Test amsterdam entity" # processed string loc = [5, 13] # "Amsterdamm" entity locations in processed string delta = 2 # diagonal size is 2*delta + 1 res = fLevTextsAligner(delta)(s1, s2, loc) print "Location of 'Amsterdamm' entity in original string is ", res print "Text is '%s'" % s1[res[0]:res[1]+1] # to visualize the results build and show levenshtein matrix # together with calculated minimal path m = fLevDistanceDiag(2).matrix(s1, s2, 111) print m.toString(s1, s2, fLevPath()(m))
from gravity.tae.match import lev_distance from gravity.tae.match.c_lev_distance import fLevTextsAligner from gravity.tae.match.c_lev_distance import fLevPath from gravity.tae.match.c_lev_distance import fLevDistanceDiag ## Offsets: 01234567890123456789012345 s1 = "Test Amsterdamm entity" # original string s2 = "Test amsterdam entity" # processed string loc = [5, 13] # "Amsterdamm" entity locations in processed string delta = 2 # diagonal size is 2*delta + 1 res = fLevTextsAligner(delta)(s1, s2, loc) print "Location of 'Amsterdamm' entity in original string is ", res print "Text is '%s'" % s1[res[0]:res[1] + 1] # to visualize the results build and show levenshtein matrix # together with calculated minimal path m = fLevDistanceDiag(2).matrix(s1, s2, 111) print m.toString(s1, s2, fLevPath()(m))
from gravity.tae import distance from gravity.tae.match.c_lev_distance import fLevDistanceDiag from gravity.tae.match.c_lev_distance import fLevPath s1 = "Test Den Haag entity" s2 = "Test Den Haag entity" m1 = fLevDistanceDiag(2).matrix(s1, s2, 111) print m1.toString(s1, s2) m2 = lev_distance.fLevDistanceDiag(2).matrix(s1, s2, 111) print m2.toString(s1, s2) print m1 == m2 p1_1 = fLevPath()(m1) p1_2 = fLevPath()(m2) print p1_1 print p1_2 p2_1 = lev_distance.fLevPath()(m1) p2_2 = lev_distance.fLevPath()(m2) print p2_1 print p2_2 print m2.toString(s1, s2, p1_2) assert m1 == m2 assert p1_1 == p1_2 and p1_2 == p2_1 and p2_1 == p2_2