RegEx:从URL获取子域(如果有)之后的域

时间:2011-04-01 14:45:27

标签: regex

这是我的问题:http://regexr.com?2temn

对于你们这些正则表达的大师来说,我确信这很简单。

干杯!

4 个答案:

答案 0 :(得分:3)

这也有效:

(?<=\.|)\w+\.\w+$

仅使用PHP进行测试。

答案 1 :(得分:2)

在(可能的)子域之后抓取域 实际上与中国相同 在顶级域名之前抓取域名

它只是从网址获取域名。

可能duplicate

答案 2 :(得分:1)

正则表达式 (通用表单)
/^(?:https?://)?(?:([\w_.-]+?).)*[\w_-]+\.\w+.+$/i

测试:

http://subdomain.domain.tld/foo/bar.html      => One match    (subdomain)
http://subdomain.subdomain2.domain.tld/bar    => Two submatches (subdomain, subdomain2)
http://justdomain.tld                         => NO match

用C#测试。
正则表达式的C#版

 ^(?:http://)?(?:([\w+_.-]+?)\.)*[\w+_-]+\.\w+.+$

DEMO

答案 3 :(得分:1)

尝试:

(\w+\.\w+)[\r\n]+

它匹配字符串与新行字符

之前的内部点