summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorram vikram singh <ramvikrams243@gmail.com>2022-11-30 22:52:21 (GMT)
committerGitHub <noreply@github.com>2022-11-30 22:52:21 (GMT)
commite0f91deb5930ecb02e7f8ced9bd82609e6889fb0 (patch)
tree029e6ba11bc3cb8634e86230090431b21c964617 /Doc
parent787764219f874ce2035699ed772af1e9f3bbf813 (diff)
downloadcpython-e0f91deb5930ecb02e7f8ced9bd82609e6889fb0.zip
cpython-e0f91deb5930ecb02e7f8ced9bd82609e6889fb0.tar.gz
cpython-e0f91deb5930ecb02e7f8ced9bd82609e6889fb0.tar.bz2
GH-98906 ```re``` module: ```search() vs. match()``` section should mention ```fullmatch()``` (GH-98916)
Mention fullmatch along with search and match.
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/re.rst18
1 files changed, 12 insertions, 6 deletions
diff --git a/Doc/library/re.rst b/Doc/library/re.rst
index 0034b46..e6e2423 100644
--- a/Doc/library/re.rst
+++ b/Doc/library/re.rst
@@ -1565,16 +1565,22 @@ search() vs. match()
.. sectionauthor:: Fred L. Drake, Jr. <fdrake@acm.org>
-Python offers two different primitive operations based on regular expressions:
-:func:`re.match` checks for a match only at the beginning of the string, while
-:func:`re.search` checks for a match anywhere in the string (this is what Perl
-does by default).
+Python offers different primitive operations based on regular expressions:
+
++ :func:`re.match` checks for a match only at the beginning of the string
++ :func:`re.search` checks for a match anywhere in the string
+ (this is what Perl does by default)
++ :func:`re.fullmatch` checks for entire string to be a match
+
For example::
>>> re.match("c", "abcdef") # No match
>>> re.search("c", "abcdef") # Match
<re.Match object; span=(2, 3), match='c'>
+ >>> re.fullmatch("p.*n", "python") # Match
+ <re.Match object; span=(0, 6), match='python'>
+ >>> re.fullmatch("r.*n", "python") # No match
Regular expressions beginning with ``'^'`` can be used with :func:`search` to
restrict the match at the beginning of the string::
@@ -1588,8 +1594,8 @@ Note however that in :const:`MULTILINE` mode :func:`match` only matches at the
beginning of the string, whereas using :func:`search` with a regular expression
beginning with ``'^'`` will match at the beginning of each line. ::
- >>> re.match('X', 'A\nB\nX', re.MULTILINE) # No match
- >>> re.search('^X', 'A\nB\nX', re.MULTILINE) # Match
+ >>> re.match("X", "A\nB\nX", re.MULTILINE) # No match
+ >>> re.search("^X", "A\nB\nX", re.MULTILINE) # Match
<re.Match object; span=(4, 5), match='X'>