blob: 8073a8c09491595604516a7b84b01cf930a8318a [file] [log] [blame]
\section{\module{soundex} ---
None}
\declaremodule{builtin}{soundex}
\modulesynopsis{None}
The soundex algorithm takes an English word, and returns an
easily-computed hash of it; this hash is intended to be the same for
words that sound alike. This module provides an interface to the
soundex algorithm.
Note that the soundex algorithm is quite simple-minded, and isn't
perfect by any measure. Its main purpose is to help looking up names
in databases, when the name may be misspelled --- soundex hashes common
misspellings together.
\begin{funcdesc}{get_soundex}{string}
Return the soundex hash value for a word; it will always be a
6-character string. \var{string} must contain the word to be hashed,
with no leading whitespace; the case of the word is ignored. (Note
that the original algorithm produces a 4-character result.)
\end{funcdesc}
\begin{funcdesc}{sound_similar}{string1, string2}
Compare the word in \var{string1} with the word in \var{string2}; this
is equivalent to
\code{get_soundex(\var{string1})} \code{==}
\code{get_soundex(\var{string2})}.
\end{funcdesc}
\begin{seealso}
\seetext{Donald E. Knuth, \emph{Sorting and Searching,} vol. 3 in
``The Art of Computer Programming.'' Addison-Wesley Publishing
Company: Reading, MA: 1973. pp.\ 391-392. Discusses the origin and
usefulness of the algorithm, as well as the algorithm itself. Knuth
gives his sources as \emph{U.S. Patents 1261167} (1918) and
\emph{1435663} (1922), attributing the algorithm to Margaret K. Odell
and Robert C. Russel. Additional references are provided.}
\end{seealso}