\section{Standard Module \sectcode{fnmatch}} \label{module-fnmatch} \stmodindex{fnmatch} This module provides support for Unix shell-style wildcards, which are \emph{not} the same as Python's regular expressions (which are documented in the \code{regex} module). The special characters used in shell-style wildcards are: \begin{itemize} \item[\code{*}] matches everything \item[\code{?}] matches any single character \item[\code{[}\var{seq}\code{]}] matches any character in \var{seq} \item[\code{[!}\var{seq}\code{]}] matches any character not in \var{seq} \end{itemize} Note that the filename separator (\code{'/'} on Unix) is \emph{not} special to this module. See module \code{glob} for pathname expansion (\code{glob} uses \code{fnmatch} to match filename segments). \begin{funcdesc}{fnmatch}{filename\, pattern} Test whether the \var{filename} string matches the \var{pattern} string, returning true or false. If the operating system is case-insensitive, then both parameters will be normalized to all lower- or upper-case before the comparision is performed. If you require a case-sensitive comparision regardless of whether that's standard for your operating system, use \code{fnmatchcase()} instead. \end{funcdesc} \begin{funcdesc}{fnmatchcase}{} Test whether \var{filename} matches \var{pattern}, returning true or false; the comparision is case-sensitive. \end{funcdesc} \begin{funcdesc}{translate}{pattern} Translate a shell pattern into a corresponding regular expression, returning a string describing the pattern. It does not compile the expression. \end{funcdesc}