当前位置:编程学习 > asp >>

asp32 位十六进制数字字符串转 IP 地址

答案:

 H2IP(vStr)
' 32 位十六进制数字字符串转 IP 地址,此函数为 IP2H 的逆运算
'
' #####################################################
'
' vStr 为合法的 32 位十六进制数字字符串
'
' #####################################################
'
' a = H2IP("000000000000000000000000DCA00411")            ' Return "220.160.4.17"
' a = H2IP("F7F00065000300220000000000000001")            ' Return "F7F0:65:3:22:0:0:0:1"

Function H2IP(vStr)
    Dim sStr,IP,intLoop
    sStr = UCase(vStr)
    If IsArray(ExpStr(sStr,"^[A-F0-9]{32}$",",")) Then
        If IsArray(expstr(sStr,"^[0]{24}",",")) Then
            IP = ExpStr(sStr,"[A-F0-9]{2}",",")
            For intLoop = UBound(IP) To UBound(IP) - 3 Step -1
                H2IP = H2D(IP(intLoop)) & "." & H2IP
            Next
            H2IP = Left(H2IP,Len(H2IP) - 1)
        Else
            IP = ExpStr(sStr,"[A-F0-9]{4}",",")
            For intLoop = 0 To UBound(IP)
                H2IP = H2IP & ":" & Hex(H2D(IP(intLoop)))
            Next
            H2IP = Right(H2IP,Len(H2IP) - 1)
        End If
    Else
        H2IP = "0.0.0.0"
    End If
End Function

上一个:输出内容时去掉文中图片
下一个:asp采集函数

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,