【问题标题】:URL validation using Regular Expression in JavaScript [duplicate]在 JavaScript 中使用正则表达式进行 URL 验证 [重复]
【发布时间】:2015-08-20 02:12:48
【问题描述】:

有很多关于使用正则表达式进行 url 验证的帖子。我得到了这个 Link 表达式并创建了一个验证 url 的函数。一切正常,但我也想要“some.com”true,这就是我得到 false。我尝试对 empty string 使用一些常规 exp,例如 ^$,但效果不佳!

function is_url(url)
    {
        if(/^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/|www\.)[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/.test(url))
            {
               return true
            }
            else
            {
               return false
            }
        }

结果:

https:\\www.some.com -

http:\\www.some.com -

http:\\some.com -

www.some.com -

some.com - false // 我希望这也是真的

有什么帮助吗?

【问题讨论】:

  • 这根本不是一个 URL。此时,为什么要进行验证?
  • 只做www 部分可选,如(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/|www\.)?
  • http:\anything 不是有效的 http url
  • @mplungjan..现在编辑

标签: javascript regex validation


【解决方案1】:

试试 validator.js https://www.npmjs.com/package/validator

isURL(str [, options]) - 检查字符串是否为 URL。 options 是一个对象,默认为 {protocols: ['http','https','ftp'], require_tld: true, require_protocol: false, allow_underscores: false, host_whitelist: false, host_blacklist: false, allow_trailing_dot: false, allow_protocol_relative_urls:假}。

凉亭安装验证器-js

<script type="text/javascript" src="bower_components/validator-js/validator.min.js"></script>
<script type="text/javascript">
  var urlOptions = {protocols: ['http','https'], require_protocol: false, allow_underscores: false};

  console.log(validator.isURL('https://www.some.com', urlOptions));
  console.log(validator.isURL('http://www.some.com', urlOptions));
  console.log(validator.isURL('http://some.com', urlOptions));
  console.log(validator.isURL('www.some.com', urlOptions));
  console.log(validator.isURL('some.com', urlOptions));
</script> 

这是结果:

  1. 代码:http://joxi.ru/vDr8ooZC3jQGA6
  2. 输出:http://joxi.ru/gV2VGG4tOMgaAv

【讨论】:

    猜你喜欢
    • 2014-06-02
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 2013-05-02
    • 2011-05-11
    • 2020-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多