[РЕШЕНО] Wiki разметка и регулярные выражения
Всем привет. Столкнулся с задачей где из текста нужно выдернуть ссылки расписанные под wiki-разметку и сделать их нормальными ссылками. Пример:
Ссылки встречающиеся в тексте
Нужно заменить на:
Пробую сделать так:
Если делать так, то второе условие не вставляется.
UPD:
Рабочий вариант
Ссылки встречающиеся в тексте
[id215554550|Евгений Маркин]
Нужно заменить на:
<a rel="nofollow" href="https://vk.com/id215554550">Евгений Маркин</a>
Пробую сделать так:
$text = preg_replace('/\[(?:.+?\|)?(.+?)\]/us', '<a rel="nofollow" href="https://vk.com/$2">$1</a>', $text);
Если делать так, то второе условие не вставляется.
UPD:
Рабочий вариант
$text = preg_replace('/\[id(\d{1,20})\|(.*?)\]/', '<a target="_blank" rel="nofollow" href="https://vk.com/id$1">$2</a>', $text);
regex101.com/r/Fv9bkW/1