package util;
/**
* @Author wxy
* @Date 19-8-12 上午10:36
* @Description TODO Url處理工具
**/
public class UrlUtils {
public static String getHost(String url) {
String[] split = split(url);
return split[1] == null ? "" : split[1];
}
public static String getPort(String url) {
String host = getHost(url);
String port = "";
if (host.indexOf(":") > 0) {
port = host.substring(host.indexOf(":") + ":".length());
}
return port;
}
public static String getUri(String url) {
String[] split = split(url);
return split[2] == null ? "" : split[2];
}
public static String getQueryString(String url) {
String[] split = split(url);
return split[3] == null ? "" : split[3];
}
/**
* <scheme>://<host>/<path>?<query>#<fragment>
*
* @param url
* @return
*/
private static String[] split(String url) {
String[] arr = new String[5];
if (url != null) {
if (url.indexOf("://") > 0) {
arr[0] = url.substring(0, url.indexOf("://"));
String u = url.substring(url.indexOf("://") + "://".length());
if (u.indexOf("/") > 0) {
arr[1] = u.substring(0, u.indexOf("/"));
String uu = u.substring(u.indexOf("/") + "/".length());
if (uu.indexOf("?") > 0) {
arr[2] = "/" + uu.substring(0, uu.indexOf("?"));
String uuu = uu.substring(uu.indexOf("?") + "?".length());
if (uuu.indexOf("#") > 0) {
arr[3] = uuu.substring(0, uuu.indexOf("#"));
arr[4] = uuu.substring(uuu.indexOf("#") + "#".length());
} else {
arr[3] = uuu;
}
} else {
arr[2] = "/" + uu;
}
} else {
arr[1] = u;
}
}
}
return arr;
}
public static void main(String[] args) {
String url = "http://www.baidu.com/s?name=123#aaa";
System.out.println("host:" + getHost(url));
System.out.println("port:" + getPort(url));
System.out.println("uri:" + getUri(url));
System.out.println("queryString:" + getQueryString(url));
}
}
Url處理工具類,獲取host、uri、queryString
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.