1998-04-04 07:23:21 +00:00
|
|
|
\section{Built-in Module \module{soundex}}
|
1997-07-17 16:34:52 +00:00
|
|
|
\label{module-soundex}
|
1998-01-20 04:45:44 +00:00
|
|
|
\bimodindex{soundex}
|
1996-12-12 17:02:21 +00:00
|
|
|
|
1998-03-08 07:56:48 +00:00
|
|
|
|
1996-12-12 17:02:21 +00:00
|
|
|
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
|
1998-01-20 04:45:44 +00:00
|
|
|
in databases, when the name may be misspelled --- soundex hashes common
|
1996-12-12 17:02:21 +00:00
|
|
|
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,
|
1998-04-07 19:58:19 +00:00
|
|
|
with no leading whitespace; the case of the word is ignored. (Note
|
|
|
|
that the original algorithm produces a 4-character result.)
|
1996-12-12 17:02:21 +00:00
|
|
|
\end{funcdesc}
|
|
|
|
|
|
|
|
\begin{funcdesc}{sound_similar}{string1, string2}
|
|
|
|
Compare the word in \var{string1} with the word in \var{string2}; this
|
|
|
|
is equivalent to
|
1998-02-13 21:49:12 +00:00
|
|
|
\code{get_soundex(\var{string1})} \code{==}
|
|
|
|
\code{get_soundex(\var{string2})}.
|
1996-12-12 17:02:21 +00:00
|
|
|
\end{funcdesc}
|
1998-04-07 19:58:19 +00:00
|
|
|
|
|
|
|
|
|
|
|
\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}
|