您好,登錄后才能下訂單哦!
java可以使用正則表達(dá)式判斷是否是IP。
ip的正則表達(dá)式:
格式是由“.”分割的四部分,每部分的范圍是0-255;zhi
每段的正則可以分幾部分來寫:dao200—255;100-199;10-99;0-9;
每一部分對應(yīng)的正則表達(dá)式: 2[0-4]\d|25[0-5]; 1\d{2}; [1-9]\d; \d
所以連起來就是\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5]
那么IP的正則就是(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])
在JS中表示為:/^(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/
實現(xiàn)代碼如下:
/** 1. @Title:IpAddress.java 2. @Package:com.you.dao 3. @Description:用正則表達(dá)式判斷是否為IP */ package com.you.dao; import java.util.regex.Matcher; import java.util.regex.Patten; /** 7. @類名:IpAddress 8. @描述:用正則表達(dá)式判斷是否為IP 9. @Author:Administrator 10. @date: 2014年3月4日 下午10:55:06 */ public class IpAddress { public static class IpAdd { public boolean isIP(String addr) { if(addr.length() < 7 || addr.length() > 15 || "".equals(addr)) { return false; } /** * 判斷IP格式和范圍 */ String rexp = "([1-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}"; Pattern pat = Pattern.compile(rexp); Matcher mat = pat.matcher(addr); boolean ipAddress = mat.find(); return ipAddress; } } /** * @Title : main * @Description : IP可能的范圍是0-255.0-255.0-255.0-255 * @param args */ public static void main(String[] args) { /** * 符合IP地址的范圍 */ String oneAddress = "10.127.30.45"; /** * 符合IP地址的長度范圍但是不符合格式 */ String twoAddress = "127.30.45"; /** * 不符合IP地址的長度范圍 */ String threeAddress = "7.0.4"; /** * 不符合IP地址的長度范圍但是不符合IP取值范圍 */ String fourAddress = "255.255.255.2567"; IpAdd ipAdd = new IpAdd(); //判斷oneAddress是否是IP System.out.println(ipAdd.isIP(oneAddress)); //判斷twoAddress是否是IP System.out.println(ipAdd.isIP(twoAddress)); //判斷threeAddress是否是IP System.out.println(ipAdd.isIP(threeAddress)); //判斷fourAddress是否是IP System.out.println(ipAdd.isIP(fourAddress)); } }
以上就是java判斷是否是ip的方法的詳細(xì)內(nèi)容,更多請關(guān)注億速云其它相關(guān)文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。