From 0a24d105244c39aeaa67db51d0b38e48402d252d Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Tue, 13 Mar 2007 07:51:04 +0000 Subject: [PATCH] Patch #1679379: add documentation for fnmatch.translate(). (backport from rev. 54323) --- Doc/lib/libfnmatch.tex | 31 +++++++++++++++++++++++++++++++ Misc/NEWS | 2 ++ 2 files changed, 33 insertions(+) diff --git a/Doc/lib/libfnmatch.tex b/Doc/lib/libfnmatch.tex index fc4b97a3126..1ac46bdd421 100644 --- a/Doc/lib/libfnmatch.tex +++ b/Doc/lib/libfnmatch.tex @@ -36,6 +36,19 @@ lower- or upper-case before the comparison is performed. If you require a case-sensitive comparison regardless of whether that's standard for your operating system, use \function{fnmatchcase()} instead. + +This example will print all file names in the current directory with the +extension \code{.txt}: + +\begin{verbatim} +import fnmatch +import os + +for file in os.listdir('.'): + if fnmatch.fnmatch(file, '*.txt'): + print file +\end{verbatim} + \end{funcdesc} \begin{funcdesc}{fnmatchcase}{filename, pattern} @@ -50,6 +63,24 @@ implemented more efficiently. \versionadded{2.2} \end{funcdesc} +\begin{funcdesc}{translate}{pattern} +Return the shell-style \var{pattern} converted to a regular +expression. + +Example: + +\begin{verbatim} +>>> import fnmatch, re +>>> +>>> regex = fnmatch.translate('*.txt') +>>> regex +'.*\\.txt$' +>>> reobj = re.compile(regex) +>>> print reobj.match('foobar.txt') +<_sre.SRE_Match object at 0x...> +\end{verbatim} +\end{funcdesc} + \begin{seealso} \seemodule{glob}{\UNIX{} shell-style path expansion.} \end{seealso} diff --git a/Misc/NEWS b/Misc/NEWS index c21972d37a7..966b9a71333 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -503,6 +503,8 @@ Tests Documentation ------------- +- Patch #1679379: add documentation for fnmatch.translate(). + - Patch #1671450: add a section about subclassing builtin types to the "extending and embedding" tutorial.