请教如何使用正则表达式匹配ip地址有效范围 本帖最后由 wumaoming 于 2013-03-09 10:24:05 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用正则的话正则挺复杂建议先 split(".")然后把 IP 拼成一个字符串(每段左补0成3位), 继而转成数字, 变成数字比较, 如:224.140.100.0 ~ 224.140.150.10'224.140.100.0' -> '224140100000' -> 224140100000(number)'224.140.150.10' -> '224140150010' -> 224140150010(number)-----------判断 224.140.123.15 在些IP段中么?'224.140.123.15' -> '224140123015' -> 224140123015(number)224140100000 < 224140123015 < 224140150010, 在段中 给个思路:在validator里面先判断是否合法ip,用正则([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}然后比较 "192.168.100.1" <=ipStr<=192.168.100.100返回比较结果就好了 在eclipse中用 tomcat运行一个JSP项目,没报错,也没页面出现 键盘控制跳转 JavaScript传值问题【已解决】 HighChart做的曲线,提示框内容能否加入除x\y以外的内容? 求助:replace正则表达式的问题!! 一个关于作用域的问题,求大神解释。 关于showModalDialog的两个问题。 一个很奇怪的问题--关于html实现表单提交 求遍历页面里所有对象的javascript WEB 元素 的 dir 属性是啥意思。怎么用 html js表格排序的问题? js漂浮问题
建议先 split(".")
然后把 IP 拼成一个字符串(每段左补0成3位), 继而转成数字, 变成数字比较, 如:
224.140.100.0 ~ 224.140.150.10
'224.140.100.0' -> '224140100000' -> 224140100000(number)
'224.140.150.10' -> '224140150010' -> 224140150010(number)
-----------
判断 224.140.123.15 在些IP段中么?
'224.140.123.15' -> '224140123015' -> 224140123015(number)
224140100000 < 224140123015 < 224140150010, 在段中
在validator里面先判断是否合法ip,用正则([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}然后比较 "192.168.100.1" <=ipStr<=192.168.100.100返回比较结果就好了