Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 将站点与特定主机名匹配的正则表达式_Regex_Url - Fatal编程技术网

Regex 将站点与特定主机名匹配的正则表达式

Regex 将站点与特定主机名匹配的正则表达式,regex,url,Regex,Url,我有一个主机127.0.0.1、example.com、other_example.io的列表,我希望有一个regex,换句话说,regex只匹配这些站点的链接,而不匹配其他站点的链接 因此,它将匹配example.com/hello/world,但不匹配otherexample.com/hello或http://example.io 或者google.com 有一个简单的正则表达式模式可以匹配这个吗?我已经查过了,但我只能找到一般URL的正则表达式。您只需将您的主机名写为您的模式,并将^放在它

我有一个主机127.0.0.1、example.com、other_example.io的列表,我希望有一个regex,换句话说,regex只匹配这些站点的链接,而不匹配其他站点的链接

因此,它将匹配example.com/hello/world,但不匹配otherexample.com/hello或http://example.io 或者google.com


有一个简单的正则表达式模式可以匹配这个吗?我已经查过了,但我只能找到一般URL的正则表达式。

您只需将您的主机名写为您的模式,并将^放在它的开头,这意味着行的开始:

/^((http|https|ftp|file)(:\/\/))?(.?www.)?([a-zA-Z0-9]+\.)?example.com.*$/gm

FWIW,other_example.com不是有效的主机名,主机名不能包含。Windows NetBIOS名称可以,DNS主机名不能。啊,好吧,那么糟糕的例子,我会解决的,谢谢:说清楚,这是一个JavaScript正则表达式,OP没有指定他的风格。@CodingGorilla是的,他没有。。但我的经验表明,当OP没有提到他的口味时,他的观点是JS;-。。。无论如何,我在等待他的澄清,如果我的假设是错误的,那么我会更新我的答案。。!是的,我只是认为指出这是什么味道对其他读者来说很重要。我把你的答案投了赞成票,因为你在“在线演示”链接的帮助下比我快了大约3秒@Xenon example.com和www.example.com应该匹配吗?@Xenon那么myhost.example.com也应该匹配吗?