@mes01

Как извлечь ссылку из строки?

Есть строка: "бла бла бла http://test.yandex.ru/test.php";
Не могу разобраться как извлечь ссылку http://test.yandex.ru/test.php

или так:
"бла бла бла http://yandex.ru/test.php бла бла бла http://mail.ru/";

результат нужен такой: "http://yandex.ru/test.php"
то есть выбрать первую ссылку в строке

нашёл немного подходящий код, но всё равно не то
function auto_link(str)
	{
		var reg = str.match(/http:\/\/[\w\.\-]+\b/ig);
		for (key in reg)
		{
			str = str.replace(reg[key],'<a href=\"'+reg[key]+'\" target=\"_blank\">'+reg[key]+'</a>')
		}
		
		return(str);
	}
	
	var textshare =	document.getElementById('textshare').value;
	alert(auto_link(textshare));
  • Вопрос задан
  • 5964 просмотра
Решения вопроса 1
madmages
@madmages
Человек прямоходящий
/http\:\/\/[\w\-\.\/]+/
на простые урлы этой регулярки хватит
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
abler98
@abler98
Software Engineer
Примерно так, вроде
var str = "бла бла бла http://yandex.ru/test.php бла бла бла http://mail.ru/";
var links = str.match(/http:\/\/[^\s\Z]+/i);
var first_link = links[0];
Ответ написан
Ваш ответ на вопрос

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

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