Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
81231d93
Commit
81231d93
authored
Oct 20, 2011
by
Ezio Melotti
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
#13219: clarify section about character sets in the re documentation.
parent
fdd4575d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
30 additions
and
24 deletions
+30
-24
Doc/library/re.rst
Doc/library/re.rst
+30
-24
No files found.
Doc/library/re.rst
View file @
81231d93
...
...
@@ -161,30 +161,36 @@ The special characters are:
raw strings for all but the simplest expressions.
``[]``
Used to indicate a set of characters. Characters can be listed individually, or
a range of characters can be indicated by giving two characters and separating
them by a ``'-'``. Special characters are not active inside sets. For example,
``[akm$]`` will match any of the characters ``'a'``, ``'k'``,
``'m'``, or ``'$'``; ``[a-z]`` will match any lowercase letter, and
``[a-zA-Z0-9]`` matches any letter or digit. Character classes such
as ``\w`` or ``\S`` (defined below) are also acceptable inside a
range, although the characters they match depends on whether
:const:`ASCII` or :const:`LOCALE` mode is in force. If you want to
include a ``']'`` or a ``'-'`` inside a set, precede it with a
backslash, or place it as the first character. The pattern ``[]]``
will match ``']'``, for example.
You can match the characters not within a range by :dfn:`complementing` the set.
This is indicated by including a ``'^'`` as the first character of the set;
``'^'`` elsewhere will simply match the ``'^'`` character. For example,
``[^5]`` will match any character except ``'5'``, and ``[^^]`` will match any
character except ``'^'``.
Note that inside ``[]`` the special forms and special characters lose
their meanings and only the syntaxes described here are valid. For
example, ``+``, ``*``, ``(``, ``)``, and so on are treated as
literals inside ``[]``, and backreferences cannot be used inside
``[]``.
Used to indicate a set of characters. In a set:
* Characters can be listed individually, e.g. ``[amk]`` will match ``'a'``,
``'m'``, or ``'k'``.
* Ranges of characters can be indicated by giving two characters and separating
them by a ``'-'``, for example ``[a-z]`` will match any lowercase ASCII letter,
``[0-5][0-9]`` will match all the two-digits numbers from ``00`` to ``59``, and
``[0-9A-Fa-f]`` will match any hexadecimal digit. If ``-`` is escaped (e.g.
``[a\-z]``) or if it's placed as the first or last character (e.g. ``[a-]``),
it will match a literal ``'-'``.
* Special characters lose their special meaning inside sets. For example,
``[(+*)]`` will match any of the literal characters ``'('``, ``'+'``,
``'*'``, or ``')'``.
* Character classes such as ``\w`` or ``\S`` (defined below) are also accepted
inside a set, although the characters they match depends on whether
:const:`ASCII` or :const:`LOCALE` mode is in force.
* Characters that are not within a range can be matched by :dfn:`complementing`
the set. If the first character of the set is ``'^'``, all the characters
that are *not* in the set will be matched. For example, ``[^5]`` will match
any character except ``'5'``, and ``[^^]`` will match any character except
``'^'``. ``^`` has no special meaning if it's not the first character in
the set.
* To match a literal ``']'`` inside a set, precede it with a backslash, or
place it at the beginning of the set. For example, both ``[()[\]{}]`` and
``[]()[{}]`` will both match a parenthesis.
``'|'``
``A|B``, where A and B can be arbitrary REs, creates a regular expression that
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment