“…Pattern matching techniques are commonly used in approximate string matching [15,17,22], which has widespread applications, from data linkage [5,6,28,30,31,32] and duplicate detection [2,3,9], information retrieval [13,18], correction of spelling errors [10,19,27], approximate database joins [14], to bio-and health informatics [11]. These techniques can broadly be classified into edit distance and q-gram based techniques, plus several techniques specifically developed for name matching.…”