Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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 正则表达式匹配域名(但不匹配TLD)_Regex - Fatal编程技术网

Regex 正则表达式匹配域名(但不匹配TLD)

Regex 正则表达式匹配域名(但不匹配TLD),regex,Regex,我知道有很多与域匹配的正则表达式,但是找不到一个来回答我的特定问题。我正在寻找一个正则表达式,它将只匹配URL的域名,而不匹配其他内容(甚至不匹配TLD)。它不需要验证域 因此,考虑到以下示例: https://www.orchardsoft.com https://www.horizon-lims.com/contact/us https://www.quartzy.com https://qbench.net https://www.xifin.com …正则表达式需要与以下内容匹配: O

我知道有很多与域匹配的正则表达式,但是找不到一个来回答我的特定问题。我正在寻找一个正则表达式,它将只匹配URL的域名,而不匹配其他内容(甚至不匹配TLD)。它不需要验证域

因此,考虑到以下示例:

https://www.orchardsoft.com
https://www.horizon-lims.com/contact/us
https://www.quartzy.com
https://qbench.net
https://www.xifin.com
…正则表达式需要与以下内容匹配:

Orchardshot
Horizon-lims
Quartz
QBench
Xifin
我开始使用的正则表达式是:(.|/(\w+)+


有人能给我指出正确的方向吗?

只要您声明可能的TLD(此处:.com.tr、.com、.net),您就可以使用以下正则表达式:

 ([\w-]+)(?=\.(?:com\.tr|com|net))

事实上,FQDN具有层次结构,因此无法始终使用正则表达式对其进行正确分析。对于路径中包含TLD的条目(如
https://www.example.com/a.combination

只要您声明可能的TLD(此处:.com.tr、.com.net),您可以使用此正则表达式:

 ([\w-]+)(?=\.(?:com\.tr|com|net))

事实上,FQDN具有分层结构,因此不可能始终使用正则表达式对其进行正确分析。它将失败(匹配两次)对于路径中包含TLD的条目,如
https://www.example.com/a.combination

请参见。@WiktorStribiżew我尝试了那篇文章中建议的正则表达式,但不幸的是,它们没有考虑域协议之类的内容。谢谢!您是用特定的语言来做这个服务器端/吗?如果有这么多人提供服务的话像Java servlets这样的r端语言有各种各样的优点,可以让生活变得简单。@JGFMK我不是很遗憾。我只是在一个名为“快捷方式”的应用程序中运行一个匹配文本操作,它可以使用正则表达式来匹配和替换文本。您最好使用示例域进行说明,如,e中所述.g.
https://www.something-hyphened.example/contact/us
。请参阅。@WiktorStribiżew我尝试了那篇文章中建议的正则表达式,但不幸的是,它们没有考虑域协议之类的内容。谢谢!您是用特定的语言来做这个服务器端/吗?如果有这么多像Java servlets这样的服务器端语言为了让生活变得简单,我有各种各样的好东西来做这类事情。@JGFMK我并不不幸。我只是在一个名为快捷方式的应用程序中运行一个匹配文本操作,它可以使用正则表达式来匹配和替换文本。您最好使用示例域进行说明,如中所述,例如
https://www.something-hyphened.示例/contact/us