找回密码
 加入
搜索
查看: 5083|回复: 8

[效率算法] 「已解决」AutoIt3 如何检测 输入(版本号)是否正确?

  [复制链接]
发表于 2013-8-19 11:23:23 | 显示全部楼层 |阅读模式
本帖最后由 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
发表于 2013-8-19 12:36:07 | 显示全部楼层
本帖最后由 user3000 于 2013-8-19 12:37 编辑

回复 1# nikbobo
If StringRegExp($sVersion, '^[1-9]\.\d\.\d\.\d$') Then
        Return True
Else
        Return False
EndIf
 楼主| 发表于 2013-8-19 16:19:31 | 显示全部楼层
回复 2# user3000

10.9.9.9 Return 0
我需要的是 Return 1
发表于 2013-8-19 17:42:58 | 显示全部楼层
回复 3# nikbobo


    看来你完全不懂正则呀.
If StringRegExp($sVersion, '^[1-9]\d*\.\d+\.\d+\.\d+$') Then
        Return True
Else
        Return False
EndIf
 楼主| 发表于 2013-8-19 21:35:34 | 显示全部楼层
回复  nikbobo


    看来你完全不懂正则呀.
user3000 发表于 2013-8-19 17:42



    没路子学。

貌似还是不对。
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, '[1-9]\d*\.\d+\.\d+\.\d+$', 0) Then
                        MsgBox(0, "DeBug", 1);DeBug
                        $Version = $t_Version
                EndIf
        ;EndIf
        Return $Version
EndFunc   ;==>_GetLatestVersion
发表于 2013-8-19 22:31:35 | 显示全部楼层
回复 5# nikbobo


    不明白"貌似还是不对", 难道不能验证"4.0.0.0"?
    可以的. 2楼的,只能验证各一位数字,4楼的则是1位或多位了
发表于 2013-8-20 01:48:56 | 显示全部楼层
我也不懂正则,都不知道怎么回事
 楼主| 发表于 2013-8-20 10:32:54 | 显示全部楼层
回复 6# user3000


    没事了,我犯了个错误,与这个无关
发表于 2013-11-25 14:08:48 | 显示全部楼层
下载看看看!!!!!!!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 12:27 , Processed in 0.077224 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表