gpt4 book ai didi

使用一些附加字符检查 IP 地址有效性的 VBScript 正则表达式

转载 作者:行者123 更新时间:2023-12-04 03:16:03 27 4
gpt4 key购买 nike

如何创建 VB 脚本不规则表达式语法来检查 VPparam(IP 地址有效性)当 IP 地址的最后一个八进制是 ip 的 (x-y) 之间的范围时在每个 IP 之间,我们可以放置“,”分隔符以添加另一个 IP

VB参数示例

VBparam=172.17.202.1-20

VBparam=172.17.202.1-10,192.9.200.1-100

VBparam=172.17.202.1-10,192.9.200.1-100,180.1.1.1-20

谢谢耶尔

最佳答案

脚本测试.vbs

更新:验证IP范围:1-255

更新:固定匹配行尾

Dim strByteMatch, strIpMatch, strPattern 
strByteMatch = "(25[0-5]|2[0-4]\d|[01]?\d\d?)"
strIpMatch = strByteMatch & "\." & strByteMatch & "\." & strByteMatch & _
"\.(" & strByteMatch & "|(" & strByteMatch & "-" & strByteMatch & "))"
strPattern = "^" & strIpMatch & "(," & strIpMatch & ")*$"


Test "172.17.202.1-20", strPattern
Test "172.17.202.1-10,192.9.200.1-100", strPattern
Test "172.17.202.1-10,192.9.200.1-100,180.1.1.1-20", strPattern
Test "172.17.202.1bug-20", strPattern ' This should fail
Test "172.17.202.333,172.17.202.1", strPattern ' This should fail

Sub Test(strString, strPattern)
if RegExIsMatch(strString, strPattern) Then
WScript.Echo "Test Pass"
else
WScript.Echo "Test Fail"
end if
End Sub

Function RegExIsMatch(strString,strPattern)
Dim RegEx
RegExMatch=False

Set RegEx = New RegExp
RegEx.IgnoreCase = True
RegEx.Global=True
RegEx.Pattern=strPattern

If RegEx.Test(strString) Then RegExIsMatch=True
End Function

关于使用一些附加字符检查 IP 地址有效性的 VBScript 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3000719/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com