Javascript 由于缺少转义字符,正则表达式URL不工作
我正在构建一个如下所示的函数:Javascript 由于缺少转义字符,正则表达式URL不工作,javascript,regex,Javascript,Regex,我正在构建一个如下所示的函数: function CheckIfValidURL(TheURL) { return /@(https?|ftp)://(-\.)?([^\s/?\.#-]+\.?)+(/[^\s]*)?$@iS/.test(TheURL); } 基本上,如果URL通过正则表达式,它应该返回true或false,顺便说一句,我从问题中得到的是/字符也是URL的一部分,因此它不会转义它。要修复此问题并使用.test()我需要做些什么?您需要使用\/避开前斜杠 否则,它们将
function CheckIfValidURL(TheURL) {
return /@(https?|ftp)://(-\.)?([^\s/?\.#-]+\.?)+(/[^\s]*)?$@iS/.test(TheURL);
}
基本上,如果URL通过正则表达式,它应该返回true或false,顺便说一句,我从问题中得到的是
/
字符也是URL的一部分,因此它不会转义它。要修复此问题并使用.test()
我需要做些什么?您需要使用\/
避开前斜杠否则,它们将被解析为regex文本的结尾。显示应该验证的URL和不应该验证的URL