这只是一个有关正则表达式的小方法,但是还是挺常用的。比如:获取用户的输入后,我们需要提取输入的字符串中的域名或者IP,进行后续的联网查询,这时候这个方法就有用了。下面直接上代码:
/** * 根据输入的字符串提取出其中的域名字符串或者IP字符串,如:www.zifangsky.cn * * @param str 输入的包含域名的字符串 * @return 域名或IP字符串 * */ public static String getDomainString(String str){ String reg = "[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+"; Pattern pattern = Pattern.compile(reg); Matcher matcher = pattern.matcher(str); if(matcher.find()){ return matcher.group(); } return ""; }
测试:
public static void main(String[] args){ System.out.println(StringUtil.getDomainString("http://www.zifangsky.cn/2015/10/hello-world/")); }
测试输出:
www.zifangsky.cn
本文出自 “zifangsky的个人博客” 博客,请务必保留此出处http://983836259.blog.51cto.com/7311475/1731596
原文:http://983836259.blog.51cto.com/7311475/1731596