首页 > 代码库 > 如何提取网址中域名和域名主体(java)
如何提取网址中域名和域名主体(java)
package com.sogou.web.selector.updana.wapPc.test;import java.util.regex.Matcher;import java.util.regex.Pattern;import com.sogou.web.selector.updana.wapPc.DomainName;public class TestURL { public static void main(String[] args) { String regex = "[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\\.?"; DomainName domainName=new DomainName(); Pattern p = Pattern.compile(regex); String url = null; Matcher matcher = null; String sourceUrl = null; url = "http://club.m.autohome.com.cn/bbs/thread-c-24-343627-1.html"; matcher = p.matcher(url); String[] urlArray=null; if (matcher.find()) { url = matcher.group(); urlArray=url.split("\\."); if(urlArray!=null&&urlArray.length!=0){ for(int i=urlArray.length-1;i>=0;i--){ if(!domainName.isContains(urlArray[i])){ url=urlArray[i]; break; } } } } System.out.println(url); }}
package com.sogou.web.selector.updana.wapPc;import java.util.HashSet;import java.util.Set;public class DomainName { private final Set<String> domain; public DomainName(){ domain=new HashSet<String>(); //世界后缀 domain.add("com"); domain.add("edu"); domain.add("gov"); domain.add("int"); domain.add("mil"); domain.add("net"); domain.add("org"); domain.add("biz"); domain.add("info"); domain.add("pro"); domain.add("name"); domain.add("museum"); domain.add("coop"); domain.add("aero"); domain.add("idv"); domain.add("xxx"); //中国 domain.add("cn"); } public boolean isContains(String value){ if(domain.contains(value)){ return true; }else{ return false; } }}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。