[英]In Java, how to delete everything after .com or .net
I am trying to get just the domain name ( http://www.example.com ) out of log files that looks like this: 我试图从看起来像这样的日志文件中获取域名( http://www.example.com ):
http://maps.google.com/maps?hl=en&tab=wl
http://l.macys.com/simi-valley-ca?cm_mmc=macys_
https://www.google.co.in/
https://www.google.ca/
I want just 我只想
http://maps.google.com/
http://l.macys.com/
https://www.google.co.in/
https://www.google.ca/
Any ideas? 有任何想法吗?
How about 怎么样
URL url = new URL("http://maps.google.com/maps?hl=en&tab=wl");
System.out.println(url.getProtocol()+"://"+url.getHost());
Output 输出量
http://maps.google.com
If you don't want to handle it yourself, then a full proof way is following: 如果您不想自己处理它,那么可以采用一种完整的证明方式:
URL url = new URL("http://l.macys.com/simi-valley-ca?cm_mmc=macys_");
System.out.println(url.getProtocol() + "://" + url.getHost() + ((url.getPort()==-1)?"" : ":" + url.getPort()) + "/" );
You can skip url.getPort if you are sure that there will never be a port type url!! 如果您确定永远不会有端口类型的url,则可以跳过url.getPort!
Cheers 干杯
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.