相关疑难解决方法(0)

获取URL的二级域(java)

我想知道在java中是否有解析器或库用于提取URL中的二级域(SLD) - 或者无法使用算法或正则表达式来执行相同操作.例如:

URI uri = new URI("http://www.mydomain.ltd.uk/blah/some/page.html");

String host = uri.getHost();

System.out.println(host);
Run Code Online (Sandbox Code Playgroud)

打印:

mydomain.ltd.uk
Run Code Online (Sandbox Code Playgroud)

现在我想做的是强有力地识别SLD("ltd.uk")组件.有任何想法吗?

编辑:我理想地寻找一般解决方案,所以我在"police.uk"中匹配".uk",在"bbc.co.uk"中匹配".co.uk",在"amazon"中匹配".com" .COM".

谢谢

java url

16
推荐指数
3
解决办法
2万
查看次数

从给定的URL中提取主域名

我使用以下内容从URL中提取域:(它们是测试用例)

String regex = "^(ww[a-zA-Z0-9-]{0,}\\.)";
ArrayList<String> cases = new ArrayList<String>();
cases.add("www.google.com");
cases.add("ww.socialrating.it");
cases.add("www-01.hopperspot.com");
cases.add("wwwsupernatural-brasil.blogspot.com");
cases.add("xtop10.net");
cases.add("zoyanailpolish.blogspot.com");

for (String t : cases) {  
    String res = t.replaceAll(regex, "");  
}
Run Code Online (Sandbox Code Playgroud)

我可以得到以下结果:

google.com
hopperspot.com
socialrating.it
blogspot.com
xtop10.net
zoyanailpolish.blogspot.com
Run Code Online (Sandbox Code Playgroud)

前四个案例都很好.最后一个不好.我想要的是:blogspot.com对于最后一个,但它给出了zoyanailpolish.blogspot.com.我究竟做错了什么?

java regex url domain-name

10
推荐指数
4
解决办法
3万
查看次数

正则表达式匹配Domain.CCTLD

有没有人知道正则表达式匹配Domain.CCTLD?我不想要子域名,只需要"原子域名".例如,docs.google.com不匹配,但google.com确实如此.然而,像.co.ukCCTLD 这样的东西变得复杂.有谁知道解决方案?提前致谢.

编辑:我意识到我还必须处理多个子域,比如john.doe.google.co.uk.现在比以往任何时候都需要解决方案:P.

python regex subdomain dns tld

8
推荐指数
2
解决办法
4178
查看次数

标签 统计

java ×2

regex ×2

url ×2

dns ×1

domain-name ×1

python ×1

subdomain ×1

tld ×1