Как настроить регулярное выражение для проверки того, содержится ли URL-адрес в блоке текста в JavaScript. Я не могу понять, как это сделать
var urlpattern = new RegExp( "(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"
var txtfield = $('#msg').val() /*this is a textarea*/
if ( urlpattern.test(txtfield) ){
//do something about it
}
РЕДАКТИРОВАТЬ:
Итак, шаблон, который у меня сейчас есть, работает в тестерах регулярных выражений для того, что мне нужно, но хром выдает ошибку
"Invalid regular expression: /(http|ftp|https)://[w-_]+(.[w-_]+)+([w-.,@?^=%&:/~+#]*[w-@?^=%&/~+#])?/: Range out of order in character class"
для следующего кода:
var urlexp = new RegExp( '(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?' );
Подробнее здесь: https://stackoverflow.com/questions/818 ... ld-of-text