本文主要是介绍Java对域名一二级区分实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.引入maven文件
<dependency><groupId>de.malkusch.whois-server-list</groupId><artifactId>public-suffix-list</artifactId><!--<version>2.2.0</version>--><version>2.0.1</version></dependency>
private static PublicSuffixList suffixList = null;public DomainLevel(){PublicSuffixListFactory factory = new PublicSuffixListFactory();suffixList = factory.build();System.out.println("load data");}public int domainSplit(String domain){String segdata = suffixList.getPublicSuffix(domain);//后缀为null的返回-1 //域名是IP则返回-1if(segdata==null||isIp(domain)){return -1;}// System.out.println(segdata);String domain_split = domain.replaceFirst("^www\\.","");//.replaceAll(segdata,"");if(domain_split.length()-segdata.length()<=1){return -1;}int domainLength = domain_split.length()-segdata.length();String domain_final = domain_split.substring(0,domainLength);// System.out.println(domain_final);int num = appearNumber(domain_final,"\\.");if(num<=0){return -1;}
// System.out.println(domain_one+"----");if(num>=2){return 2;}return num;}public int evaluate(String domain){int domainlevel = domainSplit(domain);return domainlevel;}public static void main(String[] args){DomainLevel dl = new DomainLevel();int level = dl.evaluate("www.baidu.com");System.out.println(level);}
这篇关于Java对域名一二级区分实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!