JavaScript正则表达式以匹配文本字段中的URL
- 论坛
- JavaScript正则表达式以匹配文本字段中的URL
27 浏览
JavaScript正则表达式以匹配文本字段中的URL
我该如何设置正则表达式来测试在JavaScript中的文本块中是否包含URL。我无法确定要使用的模式以实现此目的。
var urlpattern = new RegExp("(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?"); var txtfield = $('#msg').val(); /*这是一个文本区域*/ if (urlpattern.test(txtfield)){ //处理相关操作 }
编辑:
我现在的模式在正则表达式测试器中可以实现我需要的功能,但是Chrome会抛出错误。
"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\-\@?^=%&/~\+#])?');