有时候,我们需要校验URL的域名是否在白名单中,故需要提取其中的域名。可以使用java标准类库java.net.URL进行提取,方法如下:
import org.apache.commons.lang3.StringUtils;
import java.net.MalformedURLException;
import java.net.URL;
public static String getHostName(String urlStr) {
String hostName = "";
if (StringUtils.isBlank(urlStr)) {
return hostName;
}
try {
URL url = new URL(urlStr);
hostName = url.getHost(); // 获取主机名
} catch (MalformedURLException e) {
System.out.println("获取域名失败," + e);
}
return hostName;
}
为了验证准确性,提供了如下测试用例:
public static void main(String[] args) {
String myUrl = "http://www.iciba.com/word?w=Wiener";
System.out.println(getHostName(myUrl));
myUrl = "https://www.cnblogs.com/east7/p/10462279.html";
System.out.println(getHostName(myUrl));
}
如果需要,可以替换成自己需要的URL字符串进行验证。
标签:Java,String,url,hostName,URL,域名,java From: https://www.cnblogs.com/east7/p/16796439.html