javascript - 检查url是否有效

标签 javascript regex

<分区>

我试图检查 url 是否有效。 7,8 的检查返回错误的输出。

alert('1: ' + learnRegExp('http://www.google-com.123.com')); // true
alert('2: ' + learnRegExp('http://www.google-com.123')); // false
alert('3: ' + learnRegExp('https://www.google-com.com')); // true
alert('4: ' + learnRegExp('http://google-com.com')); // true
alert('5: ' + learnRegExp('http://google.com')); //true
alert('6: ' + learnRegExp('google.com')); //true
alert('7: ' + learnRegExp('ww.google.com')); //false -> it returns true
alert('8: ' + learnRegExp('www.google.co.il')); //true -> it returns false
alert('9: ' + learnRegExp('http://ww.google.co.il')); //false
alert('10: ' + learnRegExp('https://ww.google.co.il')); //false

function learnRegExp(){
    return /((ftp|https?):\/\/)?(www\.)?[a-z0-9\-\.]{3,}\.[a-z]{3}$/
    .test(learnRegExp.arguments[0]);
}

请帮我解决一下。

感谢任何帮助!

最佳答案

试试这个:

 function learnRegExp(s) {    
      var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/;
      return regexp.test(s);    
 }

关于javascript - 检查url是否有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17726427/

相关文章:

javascript - Angular CLI - 图像在 'ng build' 之后不显示

javascript - SAPUI5 列表绑定(bind)聚合获取列表的值

Java regEx URL 匹配问题

javascript - 带空格的日期和时间正则表达式

php - 解析 bbcode 中的多个列表?

javascript - 在运行时设置 href 属性

javascript - 使用 Javascript getElementById 更新 <span> 的值

javascript - 如果 http 状态代码不是 200,则缺少 CORS header ‘Access-Control-Allow-Origin’

regex - * Perl 6 中的量词

regex - 在 sed 中替换/删除匹配字符串中的特殊字符