首页  >  文章  >  后端开发  >  如何匹配带或不带协议和域前缀的 URL?

如何匹配带或不带协议和域前缀的 URL?

Barbara Streisand
Barbara Streisand原创
2024-10-22 08:47:02380浏览

How to Match URLs with or Without Protocol and Domain Prefixes?

匹配带或不带协议和域前缀的 URL

使用 URL 时,通常需要匹配它们,无论它们是否包含HTTP/HTTPS 协议或“www”域前缀。以下是实现此目的的正则表达式的详细分解:

说明:

  • 方案(可选): 匹配URL 开头的“https”或“http”。
  • 用户和密码(可选): 匹配以冒号分隔的用户名或密码。
  • 主机或 IP 地址: 使用连字符字符串后跟一个点和顶级域或 IP 地址格式捕获域名或 IP 地址。
  • 端口(可选): 匹配域后面的端口号。
  • 路径(可选): 捕获 URL 的路径,其中可以包含由斜杠分隔的目录和文件名。
  • GET 查询(可选): 匹配问号后的任何查询参数。
  • 锚点(可选): 捕获哈希后的片段标识符。

要检查此正则表达式,请使用以下语法:

这可确保整个 URL 与模式匹配并包含任何可选部分。通过使用此正则表达式,您可以可靠地匹配各种格式的 URL。

以上是如何匹配带或不带协议和域前缀的 URL?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn