annotate Doc/lib/libregsub.tex @ 5817:48b94de85bf3 legacy-trunk

Extensive changes by AMK.
author Guido van Rossum <guido@python.org>
date Thu, 17 Jul 1997 16:29:42 +0000
parents 0fc1dacdafd7
children 3468ea8645ca
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1471
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
1 \section{Standard Module \sectcode{regsub}}
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
2
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
3 \stmodindex{regsub}
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
4 This module defines a number of functions useful for working with
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
5 regular expressions (see built-in module \code{regex}).
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
6
3713
adc86707fa96 Added thread unsafety warning. Added optional retain arg to split.
Guido van Rossum <guido@python.org>
parents: 1471
diff changeset
7 Warning: these functions are not thread-safe.
adc86707fa96 Added thread unsafety warning. Added optional retain arg to split.
Guido van Rossum <guido@python.org>
parents: 1471
diff changeset
8
1471
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
9 \renewcommand{\indexsubitem}{(in module regsub)}
3995
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
10
1471
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
11 \begin{funcdesc}{sub}{pat\, repl\, str}
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
12 Replace the first occurrence of pattern \var{pat} in string
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
13 \var{str} by replacement \var{repl}. If the pattern isn't found,
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
14 the string is returned unchanged. The pattern may be a string or an
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
15 already compiled pattern. The replacement may contain references
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
16 \samp{\e \var{digit}} to subpatterns and escaped backslashes.
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
17 \end{funcdesc}
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
18
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
19 \begin{funcdesc}{gsub}{pat\, repl\, str}
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
20 Replace all (non-overlapping) occurrences of pattern \var{pat} in
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
21 string \var{str} by replacement \var{repl}. The same rules as for
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
22 \code{sub()} apply. Empty matches for the pattern are replaced only
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
23 when not adjacent to a previous match, so e.g.
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
24 \code{gsub('', '-', 'abc')} returns \code{'-a-b-c-'}.
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
25 \end{funcdesc}
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
26
3995
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
27 \begin{funcdesc}{split}{str\, pat\optional{\, maxsplit}}
1471
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
28 Split the string \var{str} in fields separated by delimiters matching
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
29 the pattern \var{pat}, and return a list containing the fields. Only
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
30 non-empty matches for the pattern are considered, so e.g.
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
31 \code{split('a:b', ':*')} returns \code{['a', 'b']} and
3995
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
32 \code{split('abc', '')} returns \code{['abc']}. The \var{maxsplit}
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
33 defaults to 0. If it is nonzero, only \var{maxsplit} number of splits
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
34 occur, and the remainder of the string is returned as the final
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
35 element of the list.
1471
2ec96140a36b Restructured library documentation
Guido van Rossum <guido@python.org>
parents:
diff changeset
36 \end{funcdesc}
3995
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
37
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
38 \begin{funcdesc}{splitx}{str\, pat\optional{\, maxsplit}}
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
39 Split the string \var{str} in fields separated by delimiters matching
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
40 the pattern \var{pat}, and return a list containing the fields as well
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
41 as the separators. For example, \code{splitx('a:::b', ':*')} returns
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
42 \code{['a', ':::', 'b']}. Otherwise, this function behaves the same
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
43 as \code{split}.
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
44 \end{funcdesc}
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
45
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
46 \begin{funcdesc}{capwords}{s\optional{\, pat}}
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
47 Capitalize words separated by optional pattern \var{pat}. The default
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
48 pattern uses any characters except letters, digits and underscores as
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
49 word delimiters. Capitalization is done by changing the first
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
50 character of each word to upper case.
ca0e05ec85b9 Added capwords, splitx, and optional 3rd argument to split/splitx.
Guido van Rossum <guido@python.org>
parents: 3713
diff changeset
51 \end{funcdesc}
5132
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
52
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
53 \begin{funcdesc}{clear_cache}{}
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
54 The regsub module maintains a cache of compiled regular expressions,
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
55 keyed on the regular expression string and the syntax of the regex
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
56 module at the time the expression was compiled. This function clears
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
57 that cache.
0fc1dacdafd7 Added a paragraph to describe clear_cache(), and why it's necessary.
Barry Warsaw <barry@python.org>
parents: 3995
diff changeset
58 \end{funcdesc}