@maksam07

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

Доброго дня. Есть html контент с картинками и текстом. Я написал регулярку, чтобы все теги img заменялись на [ рисунок ]:
$text = preg_replace( '/<img.+?>/', '[ рисунок ]', $text);
Но как сделать, чтобы при замене автоматически выводилась инкреминтированная цифра?
То есть, если в тексте несколько рисунков, то: [ рисунок 1 ], [ рисунок 2 ], [ рисунок 3 ], [ рисунок n ]?
  • Вопрос задан
  • 174 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Регулярные выражения
$count = 0;
$text = preg_replace_callback('/<img.+?>/', function() use(&$count) {
  $count++;
  return "[ рисунок $count ]";
}, $text);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы