【已解决】IP地址的C段划分
本帖最后由 zhaoceshi 于 2020-12-8 11:50 编辑$ip = '10.12.5.9'
$ip3 = StringRegExp($ip, '(?<!\d)\d{1,3}\.\d{1,3}\.\d{1,3}(?=\.\d)', 1)
Switch $ip3
Case '10.12.0' To '10.12.24'
MsgBox(0, 0, "一楼IP")
Case '10.13.0' To '10.13.24'
MsgBox(0, 0, "二楼IP")
Case '10.13.25' To '10.13.44'
MsgBox(0, 0, "三楼IP")
Case '10.13.45' To '10.13.94'
MsgBox(0, 0, "四楼IP")
Case Else
MsgBox(0, 0, "没有匹配到楼层,C段IP是 " & $ip3)
EndSwitch这样执行的结果是都没有匹配的到?怎么样才能根据C段来划分不同的分组?
根据群里的大神提示用用stringsplit解决了,不知道还有没有另外的解决方法 $ip = '10.12.5.90'
$aN = StringRegExp($ip, '\d+', 3)
If UBound($aN) <> 4 Then Exit
Switch StringFormat('%s%03d%03d', $aN, $aN, $aN)
Case '10012000' To '10012024'
MsgBox(0, $ip, '一楼IP')
Case '10013000' To '10013024'
MsgBox(0, $ip, '二楼IP')
Case '10013025' To '10013044'
MsgBox(0, $ip, '三楼IP')
Case '10013045' To '10013094'
MsgBox(0, $ip, '四楼IP')
Case Else
MsgBox(48, $ip, '没有匹配到楼层')
EndSwitch A大V5!!!! afan 发表于 2020-12-7 15:06
感谢A大{:1_206:} afan 发表于 2020-12-7 15:06
对了,A大,如果是10.125.169.99 这种的要怎么转换?我好像输入100125169这种就匹配不到 zhaoceshi 发表于 2020-12-7 15:37
对了,A大,如果是10.125.169.99 这种的要怎么转换?我好像输入100125169这种就匹配不到
每段不足3位左补零
10.125.169.99 > 10125169 afan 发表于 2020-12-7 15:39
每段不足3位左补零
10.125.169.99 > 10125169
这次完全明白了,感谢。 zhaoceshi 发表于 2020-12-7 15:41
这次完全明白了,感谢。
表客气~ 一点就通极好
页:
[1]