@DERBIAGLOBALISTO

Как заменить более двух повторяющихся символов подряд с помощью регулярных выражений?

Например, есть номер "12225422642". Надо, чтобы только первые три двойки заменялись на одну двойку.
  • Вопрос задан
  • 1341 просмотр
Пригласить эксперта
Ответы на вопрос 3
0xD34F
@0xD34F Куратор тега Регулярные выражения
preg_replace('/(.)\1{2,}/', '\1', $str)
Ответ написан
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
если ты не хочешь по каким то причинам изучать регулярки, то что мешает использовать цикл while (strpos($str, '222') !== false) ?
Ответ написан
@IS-Builder
~ PHP-8 & REGEXP - This is a really powerful kit ~
DERBIAGLOBALISTO
$str = '1222542264222';

$str = preg_replace('~(2)\1{2,}~', '$1', $str);

echo $str;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы