我不知道如何编写正则表达式,但我需要使 localhost url 在我正在使用的程序之一中有效。这是程序用来验证 URL 的正则表达式:
preg_match ( '/^https?:\/\/(([a-z0-9-]+\.)+[a-z]{2,6}|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(:[0-9]+)?(\/?|\/\S+)$/iu', $url )
我的本地网站的根 URL 是http://localhost/
,如何使其验证?
我看到你已经有了 IPv4 地址的选项,所以只是另一个选项localhost
.
在\d{1,3}
链之后,就在 之前)
,添加|localhost
.
我只是将 localhost 作为选项添加到模式的开头,所以它的开头看起来像这样:
preg_match('/^https?:\/\/(localhost|([a-z0-9-]+\.)+[a-z]{2,6} (the rest as before)
正则表达式可以分成一些部分:
https?://
(
([a-z0-9-]+\.)+[a-z]{2,6}
|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}
)
(:[0-9]+)?
(/?|/\S+)
为了将 localhost 添加到一组有效 url,只需localhost|
在协议后面的两个左括号之间添加。