正则表达式从域名中找到TLD

时间:2013-03-25 13:28:15

标签: android regex

我正在获得一个完整的域名..我想要的只是获取该域名 TLD 表单。
我已经寻找了很多模式,但找不到任何从域名获得TLD 例如:www.foo.co.uk& www.foo.org等 我想要 .co.uk &其中 .org 我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

Android为这种情况提供了Patterns.TOP_LEVEL_DOMAIN模式。您可以像使用任何其他Pattern一样使用它。

来自Pattern文档:

// Direct use of Pattern:
Pattern p = Pattern.compile("Hello, (\\S+)");
Matcher m = p.matcher(inputString);
while (m.find()) { // Find each match in turn
    String name = m.group(1); // Access a submatch groupthis.
}

您(显然)需要将p设置为Patterns.TOP_LEVEL_DOMAIN以检查TLD:

Pattern p = Patterns.TOP_LEVEL_DOMAIN;
Matcher m = p.matcher(inputURLString);