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

时间:2019-02-06 20:20:40

标签: 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

...正则表达式需要匹配以下内容:

Orchardshot
Horizon-lims
Quartz
QBench
Xifin

我从这里开始的正则表达式是:(。| //(\ w +。)+

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

1 个答案:

答案 0 :(得分:0)

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

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

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