@@ -991,8 +991,8 @@ Functions
991991 That way, separator components are always found at the same relative
992992 indices within the result list.
993993
994- Empty matches for the pattern split the string only when not adjacent
995- to a previous empty match.
994+ Adjacent empty matches are not possible, but an empty match can occur
995+ immediately after a non- empty match.
996996
997997 .. code :: pycon
998998
@@ -1095,9 +1095,12 @@ Functions
10951095
10961096 The optional argument *count * is the maximum number of pattern occurrences to be
10971097 replaced; *count * must be a non-negative integer. If omitted or zero, all
1098- occurrences will be replaced. Empty matches for the pattern are replaced only
1099- when not adjacent to a previous empty match, so ``sub('x*', '-', 'abxd') `` returns
1100- ``'-a-b--d-' ``.
1098+ occurrences will be replaced.
1099+
1100+ Adjacent empty matches are not possible, but an empty match can occur
1101+ immediately after a non-empty match.
1102+ As a result, ``sub('x*', '-', 'abxd') `` returns ``'-a-b--d-' ``
1103+ instead of ``'-a-b-d-' ``.
11011104
11021105 .. index :: single: \g; in regular expressions
11031106
@@ -1128,8 +1131,7 @@ Functions
11281131 .. versionchanged :: 3.7
11291132 Unknown escapes in *repl * consisting of ``'\' `` and an ASCII letter
11301133 now are errors.
1131- Empty matches for the pattern are replaced when adjacent to a previous
1132- non-empty match.
1134+ An empty match can occur immediately after a non-empty match.
11331135
11341136 .. versionchanged :: 3.12
11351137 Group *id * can only contain ASCII digits.
0 commit comments