「已解决」AutoIt3 如何检测 输入(版本号)是否正确?
本帖最后由 nikbobo 于 2013-8-20 10:33 编辑AutoIt3 如何检测 输入(版本号)是否正确?
格式:X.X.X.X(四个数字,中间以点分隔)
特殊:不允许在非零数字前面有0。
例子:(1 True,0 False)
1)1.0.0.0 Return 1
2)1.0.7.307 Return 1
3)1.2.4.3 Return 1
4)0.0.0.0 Return 0
5)0.1.0.0 Return 0
6)0.0.1.0 Return 0
7)0.0.0.1 Return 0 本帖最后由 user3000 于 2013-8-19 12:37 编辑
回复 1# nikbobo If StringRegExp($sVersion, '^\.\d\.\d\.\d$') Then
Return True
Else
Return False
EndIf 回复 2# user3000
10.9.9.9 Return 0
我需要的是 Return 1 回复 3# nikbobo
看来你完全不懂正则呀.
If StringRegExp($sVersion, '^\d*\.\d+\.\d+\.\d+$') Then
Return True
Else
Return False
EndIf
回复nikbobo
看来你完全不懂正则呀.
user3000 发表于 2013-8-19 17:42 http://www.autoitx.com/images/common/back.gif
没路子学。
貌似还是不对。Func _GetLatestVersion($File, $Cloud, $Id)
Local $Version = FileGetVersion($File)
;Local $Latest = $Cloud & "/?id=" & $Id & "&page=latest"
;MsgBox(0, "DeBug", $Latest);DeBug
;If InetGetSize($Latest) > 0 Then
Local $t_Version = "4.0.0.0"
;MsgBox(0, "DeBug", $t_Version);DeBug
If StringRegExp($t_Version, '\d*\.\d+\.\d+\.\d+$', 0) Then
MsgBox(0, "DeBug", 1);DeBug
$Version = $t_Version
EndIf
;EndIf
Return $Version
EndFunc ;==>_GetLatestVersion 回复 5# nikbobo
不明白"貌似还是不对", 难道不能验证"4.0.0.0"?
可以的. 2楼的,只能验证各一位数字,4楼的则是1位或多位了 我也不懂正则,都不知道怎么回事 回复 6# user3000
没事了,我犯了个错误,与这个无关 下载看看看!!!!!!!
页:
[1]