Задать вопрос
igor-fedorov
@igor-fedorov
Full Stack разработчик

Как заменить [ | ] на ссылки (Из ВКонтакте апи)?

Добрый день. Есть строка, отдаваемая ВКонакте API. Как с помощью регулярки заменить все вхождения
[$1|$2] на <span data-id="$1">$2</span>

Отдельное спасибо [id89083229|Ане], [id169355957|Лере], [id148334713|Маргарите], [id146667775|Насте В.] и [id137626852|Насте Н.], которые согласились сняться в этом видео!


Нашёл /\[((?:club|id)[0-9]+)\|(.+)\]/ такую регулярку. Но она выбирает только первое вхождение, причём с ошибкой - затрагивает следующие.

Буду благодарен за помощь.
  • Вопрос задан
  • 156 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
ProjectSoft
@ProjectSoft
Front-end && Back-end разработчик
Пригласить эксперта
Ответы на вопрос 1
kpa6uu
@kpa6uu
Программист Талибана [Пыхерский Алибаба]
http://www.phpliveregex.com/
Regex: \[(.*)\|(.*)\]
Regex Options: U
Replacement: <span data-id="$1">$2</span>

Отдельное спасибо [id89083229|Ане], [id169355957|Лере], [id148334713|Маргарите], [id146667775|Насте В.] и [id137626852|Насте Н.], которые согласились сняться в этом видео!

=

Отдельное спасибо <span data-id="id89083229">Ане</span>, <span data-id="id169355957">Лере</span>, <span data-id="id148334713">Маргарите</span>, <span data-id="id146667775">Насте В.</span> и <span data-id="id137626852">Насте Н.</span>, которые согласились сняться в этом видео!
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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