@polzovatel_vue

Не получается найти ссылку в строке, в чем ошибка?

Не получается сматчить ссылку из строки

public function open_model(Request $request){
        $text = 'Добрый день,
Не получается сделать ссылку на сайт http://www.gcam.gov.sa/ - выдает весь текст одной ссылкой
помогите';
        $text = preg_replace('/\n/', ' <br> ', $text);
        $reg_exUrl = "/(http|https|ftp|ftps)(\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3})(\/[^#]*)(#(\S*))*/";
        $pos = strpos($text, '<a href');
        if(preg_match($reg_exUrl, $text, $url) && $pos === false) {
            // make the urls hyper links
            $text = preg_replace($reg_exUrl, "<a href='$url[0]' target='_blank'>$url[0]</a>", $text);
        }
         return Response()->json($text, 200);
    }

В результате выдает весь текст где начинается ссылка, все остальное тоже в ссылку
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ответы на вопрос 1
@maxzhurkin
Регулярные выражения нужно составлять аккуратнее: пробелы походят под часть [^#]
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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