这只是一个有关正则表达式的小方法,但是还是挺常用的。比如:获取用户的输入后,我们需要提取输入的字符串中的域名或者IP,进行后续的联网查询,这时候这个方法就有用了。下面直接上代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
/** * 根据输入的字符串提取出其中的域名字符串或者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 "" ;
}
|
测试:
1
2
3
|
public static void main(String[] args){
System.out.println(StringUtil.getDomainString( "http://www.zifangsky.cn/2015/10/hello-world/" ));
}
|
测试输出:
www.zifangsky.cn
本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1731596,如需转载请自行联系原作者