Skip to content
Snippets Groups Projects
Unverified Commit b7a6610b authored by Stanley's avatar Stanley Committed by GitHub
Browse files

gh-73137: Added sub-subsection headers for flags in re (#93000)

Fixes #73137
parent ac718d35
Branches
Tags
No related merge requests found
...@@ -667,40 +667,14 @@ functions are simplified versions of the full featured methods for compiled ...@@ -667,40 +667,14 @@ functions are simplified versions of the full featured methods for compiled
regular expressions. Most non-trivial applications always use the compiled regular expressions. Most non-trivial applications always use the compiled
form. form.
Flags
^^^^^
.. versionchanged:: 3.6 .. versionchanged:: 3.6
Flag constants are now instances of :class:`RegexFlag`, which is a subclass of Flag constants are now instances of :class:`RegexFlag`, which is a subclass of
:class:`enum.IntFlag`. :class:`enum.IntFlag`.
.. function:: compile(pattern, flags=0)
Compile a regular expression pattern into a :ref:`regular expression object
<re-objects>`, which can be used for matching using its
:func:`~Pattern.match`, :func:`~Pattern.search` and other methods, described
below.
The expression's behaviour can be modified by specifying a *flags* value.
Values can be any of the following variables, combined using bitwise OR (the
``|`` operator).
The sequence ::
prog = re.compile(pattern)
result = prog.match(string)
is equivalent to ::
result = re.match(pattern, string)
but using :func:`re.compile` and saving the resulting regular expression
object for reuse is more efficient when the expression will be used several
times in a single program.
.. note::
The compiled versions of the most recent patterns passed to
:func:`re.compile` and the module-level matching functions are cached, so
programs that use only a few regular expressions at a time needn't worry
about compiling regular expressions.
.. class:: RegexFlag .. class:: RegexFlag
...@@ -825,6 +799,41 @@ form. ...@@ -825,6 +799,41 @@ form.
Corresponds to the inline flag ``(?x)``. Corresponds to the inline flag ``(?x)``.
Functions
^^^^^^^^^
.. function:: compile(pattern, flags=0)
Compile a regular expression pattern into a :ref:`regular expression object
<re-objects>`, which can be used for matching using its
:func:`~Pattern.match`, :func:`~Pattern.search` and other methods, described
below.
The expression's behaviour can be modified by specifying a *flags* value.
Values can be any of the following variables, combined using bitwise OR (the
``|`` operator).
The sequence ::
prog = re.compile(pattern)
result = prog.match(string)
is equivalent to ::
result = re.match(pattern, string)
but using :func:`re.compile` and saving the resulting regular expression
object for reuse is more efficient when the expression will be used several
times in a single program.
.. note::
The compiled versions of the most recent patterns passed to
:func:`re.compile` and the module-level matching functions are cached, so
programs that use only a few regular expressions at a time needn't worry
about compiling regular expressions.
.. function:: search(pattern, string, flags=0) .. function:: search(pattern, string, flags=0)
Scan through *string* looking for the first location where the regular expression Scan through *string* looking for the first location where the regular expression
...@@ -1061,6 +1070,9 @@ form. ...@@ -1061,6 +1070,9 @@ form.
Clear the regular expression cache. Clear the regular expression cache.
Exceptions
^^^^^^^^^^
.. exception:: error(msg, pattern=None, pos=None) .. exception:: error(msg, pattern=None, pos=None)
Exception raised when a string passed to one of the functions here is not a Exception raised when a string passed to one of the functions here is not a
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment