【问题标题】:Universal standard regular expression for URL validation?URL验证的通用标准正则表达式?
【发布时间】:2020-01-23 05:19:38
【问题描述】:

P.S:请不要将此标记为重复,我已经看到了许多其他问题。
我有一组要验证的 URL,例如:

https://pqr-aaa.abc.xyz.com:8383
http://172.24.100.200:6767
还有很多。我正在用 javascript 验证它们。我已经看到 许多 个问题并找到我正在寻找的正则表达式。这似乎符合我的需要:

^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/)?[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?|^((http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/)?([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$


我的问题是,是否有一个通用的 URL 验证正则表达式标准供所有人使用,还是我们只使用适合我们需要的正则表达式?

【问题讨论】:

  • 如果有帖子询问 URL 验证的通用正则表达式,并且答案提供了这样的正则表达式,为什么不应该将此问题标记为 dup?
  • 我看到了这个问题,我在问是否有一个严格遵循的标准:(
  • 对我来说,您似乎在问 RegExp,但有一个 standard
  • 嗯,有点,另请参阅this answer
  • 看来 bobince 的答案有点过时了,但仍然是正确的正则表达式。看看 MDN 上的URL

标签: javascript regex url


【解决方案1】:

我相信下面的正则表达式将适用于所有 URL 验证:

^(?:http(s)?:\/\/)?[\w.-]+(?:\.[\w\.-]+)+[\w\-\._~:/?#[\]@!\$&'\(\)\*\+,;=.]+$

【讨论】:

  • 其他模式怎么样,比如 ftp ..?
猜你喜欢
  • 2021-02-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-07
  • 2013-08-24
  • 2011-07-30
相关资源
最近更新 更多