]> git.saurik.com Git - wxWidgets.git/commitdiff
wxRegEx docs I forgot to add before (sorry)
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 16 Jul 2001 22:54:14 +0000 (22:54 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 16 Jul 2001 22:54:14 +0000 (22:54 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/regex.tex [new file with mode: 0644]

diff --git a/docs/latex/wx/regex.tex b/docs/latex/wx/regex.tex
new file mode 100644 (file)
index 0000000..32fa868
--- /dev/null
@@ -0,0 +1,200 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Name:        regex.tex
+%% Purpose:     wxRegEx documentation
+%% Author:      Vadim Zeitlin
+%% Modified by:
+%% Created:     14.07.01
+%% RCS-ID:      $Id$
+%% Copyright:   (c) 2001 Vadim Zeitlin
+%% License:     wxWindows license
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\section{\class{wxRegEx}}\label{wxregex}
+
+wxRegEx represents a regular expression. The regular expressions syntax
+supported is the POSIX one. Both basic and extended regular expressions are
+supported but, unlike POSIX C API, the extended ones are used by default.
+
+This class provides support for regular expressions matching and also
+replacement. It is built on top of either the system library (if it has support
+for POSIX regular expressions - which is the case of the most modern Unices) or
+uses the built in Henry Spencer's library. In the latter case you need to abide
+by the terms of its copyright:
+
+\begin{verbatim}
+Copyright 1992, 1993, 1994, 1997 Henry Spencer.  All rights reserved.
+This software is not subject to any license of the American Telephone
+and Telegraph Company or of the Regents of the University of California.
+
+Permission is granted to anyone to use this software for any purpose on
+any computer system, and to alter it and redistribute it, subject
+to the following restrictions:
+
+1. The author is not responsible for the consequences of use of this
+   software, no matter how awful, even if they arise from flaws in it.
+
+2. The origin of this software must not be misrepresented, either by
+   explicit claim or by omission.  Since few users ever read sources,
+   credits must appear in the documentation.
+
+3. Altered versions must be plainly marked as such, and must not be
+   misrepresented as being the original software.  Since few users
+   ever read sources, credits must appear in the documentation.
+
+4. This notice may not be removed or altered.
+\end{verbatim}
+
+\wxheading{Derived from}
+
+No base class
+
+\wxheading{Data structures}
+
+Flags for regex compilation to be used with \helpref{Compile()}{wxregexcompile}:
+\begin{verbatim}
+enum
+{
+    // use extended regex syntax (default)
+    wxRE\_EXTENDED = 0,
+
+    // use basic RE syntax
+    wxRE\_BASIC    = 2,
+
+    // ignore case in match
+    wxRE\_ICASE    = 4,
+
+    // only check match, don't set back references
+    wxRE\_NOSUB    = 8,
+
+    // if not set, treat '\n' as an ordinary character, otherwise it is
+    // special: it is not matched by '.' and '^' and '$' always match
+    // after/before it regardless of the setting of wxRE\_NOT[BE]OL
+    wxRE\_NEWLINE  = 16,
+
+    // default flags
+    wxRE\_DEFAULT  = wxRE\_EXTENDED
+}
+\end{verbatim}
+
+Flags for regex matching to be used with \helpref{Matches()}{wxregexmatches}.
+
+These flags are mainly useful when doing several matches in a long string
+to prevent erroneous matches for {\tt '\^'} and {\tt '\$'}
+\begin{verbatim}
+enum
+{
+    // '^' doesn't match at the start of line
+    wxRE\_NOTBOL = 32,
+
+    // '$' doesn't match at the end of line
+    wxRE\_NOTEOL = 64
+}
+\end{verbatim}
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+\membersection{wxRegEx::wxRegEx}\label{wxregexwxregex}
+
+\func{}{wxRegEx}{\void}
+
+Default ctor: use \helpref{Compile()}{wxregexcompile} later.
+
+\membersection{wxRegEx::wxRegEx}\label{wxregexwxregex}
+
+\func{}{wxRegEx}{\param{const wxString\& }{expr}, \param{int }{flags = wxRE\_DEFAULT}}
+
+Create and compile the regular expression, use 
+\helpref{IsValid}{wxregexisvalid} to test for compilation errors.
+
+\membersection{wxRegEx::\destruct{wxRegEx}}\label{wxregexdtor}
+
+\func{}{\destruct{wxRegEx}}{\void}
+
+dtor not virtual, don't derive from this class
+
+\membersection{wxRegEx::Compile}\label{wxregexcompile}
+
+\func{bool}{Compile}{\param{const wxString\& }{pattern}, \param{int }{flags = wxRE\_DEFAULT}}
+
+Compile the string into regular expression, return {\tt TRUE} if ok or {\tt FALSE}
+if string has a syntax error.
+
+\membersection{wxRegEx::IsValid}\label{wxregexisvalid}
+
+\constfunc{bool}{IsValid}{\void}
+
+Return {\tt TRUE} if this is a valid compiled regular expression, {\tt FALSE} 
+otherwise.
+
+\membersection{wxRegEx::GetMatch}\label{wxregexgetmatch}
+
+\constfunc{bool}{GetMatch}{\param{size\_t* }{start}, \param{size\_t* }{len}, \param{size\_t }{index = 0}}
+
+Get the start index and the length of the match of the expression
+(if {\it index} is $0$) or a bracketed subexpression ({\it index} different
+from $0$).
+
+May only be called after successful call to \helpref{Matches()}{wxregexmatches} 
+and only if {\tt wxRE\_NOSUB} was {\bf not} used in 
+\helpref{Compile()}{wxregexcompile}.
+
+Returns {\tt FALSE} if no match or if an error occured.
+
+\constfunc{wxString}{GetMatch}{\param{const wxString\& }{text}, \param{size\_t }{index = 0}}
+
+Returns the part of string corresponding to the match where {\it index} is
+interpreted as above. Empty string is returned if match failed
+
+May only be called after successful call to \helpref{Matches()}{wxregexmatches} 
+and only if {\tt wxRE\_NOSUB} was {\bf not} used in 
+\helpref{Compile()}{wxregexcompile}.
+
+\membersection{wxRegEx::Matches}\label{wxregexmatches}
+
+\constfunc{bool}{Matches}{\param{const wxChar* }{text}, \param{int }{flags = 0}}
+
+Matches the precompiled regular expression against the string {\it text},
+returns {\tt TRUE} if matches and {\tt FALSE} otherwise.
+
+Flags may be combination of {\tt wxRE\_NOTBOL} and {\tt wxRE\_NOTEOL}.
+
+May only be called after successful call to \helpref{Compile()}{wxregexcompile}.
+
+\membersection{wxRegEx::Replace}\label{wxregexreplace}
+
+\constfunc{int}{Replace}{\param{wxString* }{text}, \param{const wxString\& }{replacement}, \param{size\_t }{maxMatches = 0}}
+
+Replaces the current regular expression in the string pointed to by
+{\it text}, with the text in {\it replacement} and return number of matches
+replaced (maybe $0$ if none found) or $-1$ on error.
+
+The replacement text may contain back references {\tt \\number} which will be
+replaced with the value of the corresponding subexpression in the
+pattern match. {\tt \\0} corresponds to the entire match and {\tt \&} is a
+synonym for it. Backslash may be used to quote itself or {\tt \&} character.
+
+{\it maxMatches} may be used to limit the number of replacements made, setting
+it to $1$, for example, will only replace first occurence (if any) of the
+pattern in the text while default value of $0$ means replace all.
+
+\membersection{wxRegEx::ReplaceAll}\label{wxregexreplaceall}
+
+\constfunc{int}{ReplaceAll}{\param{wxString* }{text}, \param{const wxString\& }{replacement}}
+
+Replace all occurences: this is actually a synonym for 
+\helpref{Replace()}{wxregexreplace}.
+
+\wxheading{See also}
+
+\helpref{ReplaceFirst}{wxregexreplacefirst}
+
+\membersection{wxRegEx::ReplaceFirst}\label{wxregexreplacefirst}
+
+\constfunc{int}{ReplaceFirst}{\param{wxString* }{text}, \param{const wxString\& }{replacement}}
+
+Replace the first occurence.
+
+\wxheading{See also}
+
+\helpref{Replace}{wxregexreplace}
+