VB经验很少,遇到头疼的问题。我需要获取一个 IP 并反转它。
例如 - 11.22.33.44 将变为 44.33.22.11
我猜要反转整个批次,然后根据 . 分隔符
严格来说,我想做的是颠倒八位字节的顺序 - 192.168.42.23 应该变成 23.42.168.192
谢谢
编辑 - 澄清
对于您的示例,字符串反转将起到作用。
Dim txt
txt="This is a beautiful day!"
document.write(StrReverse(txt))
Output:
!yad lufituaeb a si sihT
这仅适用于您提供的示例。如果你需要反转这个:12.34.56.78,上面将返回 87.65.43.21 但你想要 78.56.34.12。
然后结合拆分+循环:
a=Split("11.22.33.44", ".", 4)
b= a(0)
For i = 1 To 3
b = a(i) & "." & b
Next
WScript.Echo b
更新:或者根本没有循环!
a=Split("11.22.33.44", ".", 4)
b= a(3) & "." & a(2) & "." & a(1) & "." & a(0)
WScript.Echo b
您需要将 IP 地址拆分为其八位字节并以相反的顺序重新组合它们:
addr1 = Split("11.22.33.44", ".")
maxindex = UBound(addr1)
ReDim addr2(maxindex)
For i = 0 To maxindex
addr2(maxindex - i) = addr1(i)
Next
WScript.Echo "Forward: " & Join(addr1, ".")
WScript.Echo "Reverse: " & Join(addr2, ".")
输出:
Forward: 11.22.33.44
Reverse: 44.33.22.11