Android Url正当性検査
1446 ワード
android.util.Patterns
Url正当性検査方法
≪インスタンス|Instance|emdw≫
/**
* Regular expression pattern to match most part of RFC 3987
* Internationalized URLs, aka IRIs. Commonly used Unicode characters are
* added.
*/
public static final Pattern WEB_URL = Pattern.compile(
"((?:(http|https|Http|Https|rtsp|Rtsp):\\/\\/(?:(?:[a-zA-Z0-9\\$\\-\\_\\.\\+\\!\\*\\'\\(\\)"
+ "\\,\\;\\?\\&\\=]|(?:\\%[a-fA-F0-9]{2})){1,64}(?:\\:(?:[a-zA-Z0-9\\$\\-\\_"
+ "\\.\\+\\!\\*\\'\\(\\)\\,\\;\\?\\&\\=]|(?:\\%[a-fA-F0-9]{2})){1,25})?\\@)?)?"
+ "(?:" + DOMAIN_NAME + ")"
+ "(?:\\:\\d{1,5})?)" // plus option port number
+ "(\\/(?:(?:[" + GOOD_IRI_CHAR + "\\;\\/\\?\\:\\@\\&\\=\\#\\~" // plus option query params
+ "\\-\\.\\+\\!\\*\\'\\(\\)\\,\\_])|(?:\\%[a-fA-F0-9]{2}))*)?"
+ "(?:\\b|$)");
Url正当性検査方法
/**
* url
* @param url
* @return
*/
public static boolean checkUrl (String url) {
if (Patterns.WEB_URL.matcher(url).matches()) {
// url
return true;
} else{
//
return false;
}
}
≪インスタンス|Instance|emdw≫
String url = "http://www.baidu.com
";
LogUtil.i("checkurl:" + checkUrl(url));
output:false
String url = "http://www.baidu.com";
LogUtil.i("checkurl:" + checkUrl(url));
output:true