Регулярное выражение php - нужна помощь в составлении

Всем привет!

Помогите, пожалуйста составить регулярное выражение для следующей задачи: Есть текст в переменной $text, в нем попадаются такие куски [url="https://site/path/2017/07/28/img.jpg"] (их может быть много разных), мне нужно найти все такие куски, вытащить все что между кавычками в url записать в массив, а оригинал из текста удалить. Помогите пожалуйста.


Ответы (1 шт):

Автор решения: frozencoast

Отвечаю на последний ваш комментарий:

$arr = array();

$text = preg_replace_callback(
    '/\[url="([^"]+)"\](?: *\[img\][^[]+\[\/img\] *\[\/url\])?/',
    function ($matches) use (&$arr) {
        $arr[] = $matches[1];
        return '';
    },
    $text
);
→ Ссылка