Adds an optional flags argument to re.split, re.sub and re.subn to be
consistent with the other re module functions.
diff --git a/Doc/library/re.rst b/Doc/library/re.rst
index 2237f07..4fb4016 100644
--- a/Doc/library/re.rst
+++ b/Doc/library/re.rst
@@ -540,7 +540,7 @@
instead.
-.. function:: split(pattern, string[, maxsplit=0])
+.. function:: split(pattern, string[, maxsplit=0, flags=0])
Split *string* by the occurrences of *pattern*. If capturing parentheses are
used in *pattern*, then the text of all groups in the pattern are also returned
@@ -555,6 +555,8 @@
['Words', ', ', 'words', ', ', 'words', '.', '']
>>> re.split('\W+', 'Words, words, words.', 1)
['Words', 'words, words.']
+ >>> re.split('[a-f]+', '0a3B9', flags=re.IGNORECASE)
+ ['0', '3', '9']
If there are capturing groups in the separator and it matches at the start of
the string, the result will start with an empty string. The same holds for
@@ -575,6 +577,9 @@
>>> re.split("(?m)^$", "foo\n\nbar\n")
['foo\n\nbar\n']
+ .. versionchanged:: 2.7,3.1
+ Added the optional flags argument.
+
.. function:: findall(pattern, string[, flags])
@@ -605,7 +610,7 @@
Added the optional flags argument.
-.. function:: sub(pattern, repl, string[, count])
+.. function:: sub(pattern, repl, string[, count, flags])
Return the string obtained by replacing the leftmost non-overlapping occurrences
of *pattern* in *string* by the replacement *repl*. If the pattern isn't found,
@@ -630,6 +635,8 @@
... else: return '-'
>>> re.sub('-{1,2}', dashrepl, 'pro----gram-files')
'pro--gram files'
+ >>> re.sub(r'\sAND\s', ' & ', 'Baked Beans And Spam', flags=re.IGNORECASE)
+ 'Baked Beans & Spam'
The pattern may be a string or an RE object; if you need to specify regular
expression flags, you must use a RE object, or use embedded modifiers in a
@@ -650,12 +657,18 @@
character ``'0'``. The backreference ``\g<0>`` substitutes in the entire
substring matched by the RE.
+ .. versionchanged:: 2.7,3.1
+ Added the optional flags argument.
-.. function:: subn(pattern, repl, string[, count])
+
+.. function:: subn(pattern, repl, string[, count, flags])
Perform the same operation as :func:`sub`, but return a tuple ``(new_string,
number_of_subs_made)``.
+ .. versionchanged:: 2.7,3.1
+ Added the optional flags argument.
+
.. function:: escape(string)