【问题标题】:regex for url validation using jquery使用 jquery 进行 url 验证的正则表达式
【发布时间】:2012-05-11 11:46:03
【问题描述】:

我需要使用正则表达式验证 url。应接受的有效格式如下:

users.kathir.com
www.kathir.com

我目前正在使用以下正则表达式:

^[a-z0-9-]+(\.[a-z0-9-])+(.[a-z])

但它接受 www.google 作为有效的,但它应该只接受 google.com 或 www.google.com。请推荐

【问题讨论】:

  • 如果您只对捕获以 .com / .edu / 等结尾的顶级域感兴趣,那么您可以将这些字符放在最后一部分进行验证。 ....(com|edu) 而不是字符类.[a-z]。您应该更新您的问题以非常具体地说明您想要验证的内容,而不是四个示例仅显示一个无效 URL 示例

标签: jquery regex


【解决方案1】:

我用这个,效果很好:

function checkUrl(url){
    return url.match(/(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])?/);
}

希望有帮助:)

【讨论】:

    【解决方案2】:

    用户will 提供的答案还验证了那些末尾没有 .com|edu|org 等的正则表达式,以使其更合适和你一起

    var pattern = /^(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&:/~\+#]*[\w\-\@?^=%&/~\+#])+(.[a-z])?/;
    var regex = new RegExp(pattern);
    var website_url = $("#website_url").val();// url of the website
    if (website_url.match(regex)) {
        return true
    } else {
        return false;
    }
    

    如果你喜欢,请点赞

    【讨论】:

      猜你喜欢
      • 2020-12-03
      • 2014-09-14
      • 2014-06-02
      • 2011-02-27
      • 1970-01-01
      • 2021-10-17
      • 1970-01-01
      • 2020-02-18
      相关资源
      最近更新 更多