Soundex
Soundex is a phonetic algorithm that encodes English names by pronunciation as a letter plus three digits, giving similar-sounding names the same code; it is used for fuzzy person-name retrieval.
Purpose
Encodes names by English pronunciation so that names spelled differently but pronounced alike can match.
Mechanism
Keep the first letter + drop the vowels and h/w/y (a,e,i,o,u,h,w,y) + map consonants to digits by group (b,f,p,v→1; c,g,j,k,q,s,x,z→2; d,t→3; l→4; m,n→5; r→6) + collapse adjacent same-group codes + pad with zeros to 3 digits.
Use cases
- Person-name database retrieval
- Genealogy search
- Spelling correction
- Record deduplication
Examples
- Input
RobertOutputR163Robert and Rupert share the same code
Common errors
- Soundex suits English only; other languages need adjustments
- Use a language-specific phonetic algorithm
Related terms
Metaphone
Metaphone is an improved phonetic algorithm over Soundex that accounts for more English pronunciation rules (e.g., consonant combinations and silent letters), yielding higher accuracy. GLOSSARY
Levenshtein Distance
The Levenshtein distance is the minimum number of single-character insertions, deletions, and substitutions needed to make two strings identical. GLOSSARY
Fuzzy Search
Fuzzy search is a search technique tolerant of spelling variations, matching approximate results based on edit distance, n-grams, or phonetic algorithms. GLOSSARY