【已解决】网址和IP地址判断 StringRegExp 问题请教,谢谢。。
本帖最后由 pingfan5888 于 2017-8-20 09:24 编辑这个例子中,StringRegExp 判断都是不行,但在其他代码中又正常。我哪里写错了,还是???实在查不出,请教大大们帮忙了。。请教大大们帮忙了。。$adw = GUICtrlRead(ClipGet())
$adww = StringReplace($adw, ' ', '')
If $adww = '' Then
ElseIf StringRegExp($adww, '^(({0,61})?\.)+{2,6}) = 0 Then
MsgBox(48, 'xxx', '错误:网站格式不正确,请重新输入!' & @CRLF & @CRLF & '格式:www.xxxxxx.com', 2)
; 正常网址出现错误提示。
Else
If StringRegExp($adww, '^((25)|(2\d)|(1\d\d)|(\d)|\d)(\.((25)|(2\d)|(1\d\d)|(\d)|\d)){3}) = 1 Then
;MsgBox(48, '域名解析', 'IP格式正确!', 2);这边等于没有用处。。。不起作用。。
GUICtrlSetData($Input4, '||' & $adww& '^')
GUICtrlSetData($Input5, '||' & $adww & '^$popup')
Else
$array = StringRegExp(ClipGet(), '[^.]+\.[^.]+?(?=$|\s)', 2)
For $i = 0 To UBound($array) - 1
;MsgBox(0, "正则表达式选项 3 测试 " & $i, $array[$i])
If $array[$i] = 'com.cn' Or $array[$i] = 'org.cn' Or $array[$i] = 'net.cn' Then
$array1 = StringRegExp(ClipGet(), '[^.]+\.[^.]+\.[^.]+?(?=$|\s)', 2)
For $b = 0 To UBound($array1) - 1
GUICtrlSetData($Input4, '||' & $array1[$b] & '^')
GUICtrlSetData($Input5, '||' & $array1[$b] & '^$popup')
Next
Else
GUICtrlSetData($Input4, '||' & $array[$i] & '^')
GUICtrlSetData($Input5, '||' & $array[$i] & '^$popup')
EndIf
Next
EndIf
EndIf多谢各位了,已解决了,先判断IP在判断域名就是不出错了,原因也不知为什么要这样, 网址正则: +://[^\s]*
匹配IP地址:\d+\.\d+\.\d+\.\d+ 回复 2# xzf680
楼上的,你这两个正则不行 回复 3# yamakawa
好吧,不行我也没办法!标志请选3
{:face (197):}
看下图:
回复 4# xzf680
那个0是数组索引0的意思。。。。就是说匹配到了1个 \A(2|2\d|1\d{1,2}|0\d{1,2}|00\d|\d{1,2})\.(2|2\d|1\d{1,2}|0\d{1,2}|00\d|\d{1,2})\.(2|2\d|1\d{1,2}|0\d{1,2}|00\d|\d{1,2})\.(2|2\d|1\d{1,2}|0\d{1,2}|00\d|\d{1,2})\Z 正则好复杂...
页:
[1]