ceoguang 发表于 2009-5-28 03:38:40

请教,如何准确地判断str是否为IP

本帖最后由 ceoguang 于 2009-7-2 17:44 编辑

rt.
在其它地方找到一个正则StringRegExp($ip, '((2\d|25|?\d\d?)\.){3}(2\d|25|?\d\d?)', 2)但并不能准确无误,高手都来支下招!

破帽遮颜 发表于 2009-5-28 03:45:15

Func _StringIsIP($strIP)
        $str = StringSplit($strIP, ".")
        If $str <> 4 Then
                SetError(1)
                Return('')
        ElseIf StringIsDigit($str) <> 1 Or StringIsDigit($str) <> 1 Or _
                        StringIsDigit($str) <> 1 Or StringIsDigit($str) <> 1 Then
                SetError(2)
                Return('')
        ElseIf $str > 255 Or $str > 255 Or $str > 255 Or $str > 255 Then
                SetError(3)
                Return('')
        Else
                Return(Int($str) & "." & Int($str) & "." & Int($str) & "." & Int($str))
        EndIf
EndFunc

ceoguang 发表于 2009-5-28 04:02:24

速度真快,thk

sensel 发表于 2009-5-28 13:10:53

StringRegExp($sIP, "^((25|2\d|?\d?\d)\.){3}(25|2\d|?\d?\d)$")
我一直用这个

pcbar 发表于 2009-5-28 15:13:11

rt.
在其它地方找到一个正则StringRegExp($ip, '((2\d|25|?\d\d?)\.){3}(2\d|25|?\d\d?)', 2)但并不能准确无误,高手都来支下招!
ceoguang 发表于 2009-5-28 03:38 http://www.autoitx.com/images/common/back.gif
但并不能准确无误??请举例说明
页: [1]
查看完整版本: 请教,如何准确地判断str是否为IP