Python 3.10.16 (main, Dec 7 2024, 13:31:33) [Clang 16.0.0 (clang-1600.0.26.6)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import re
>>> re.sub('(.{4,5})+', '-', '1234123412341234')
'-4'
>>> re.sub('(.{4,5})*', '-', '1234123412341234')
'--4-'
>>>
< /code>
И я смог воспроизвести это в PHP, предположительно, потому что они оба используют PCR за спиной: < /p>
$ php -a
Interactive shell
php > echo preg_replace('/(.{4,5})+/', '-', '1234123412341234');
-4
php > echo preg_replace('/(.{4,5})*/', '-', '1234123412341234');
--4-
php >
, исследуя семантическую разницу между квантификаторами на основе длины и количества p> [code]Python 3.10.16 (main, Dec 7 2024, 13:31:33) [Clang 16.0.0 (clang-1600.0.26.6)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import re >>> re.sub('(.{4,5})+', '-', '1234123412341234') '-4' >>> re.sub('(.{4,5})*', '-', '1234123412341234') '--4-' >>> < /code> И я смог воспроизвести это в PHP, предположительно, потому что они оба используют PCR за спиной: < /p> $ php -a Interactive shell