fengzishao 发表于 2012-2-10 09:34:01

请教--AU3同时多条件判断的问题--已解决

本帖最后由 fengzishao 于 2012-2-10 11:00 编辑

比如一个INI文件中


要求判断
1.必需有[]
2.大括号中有12个字符

如果这两个条件同时成立则执行下一条命令,有一个不成立则停止运行.

但是我只能判断一个,

love5173 发表于 2012-2-10 10:17:24

哪里来的大括弧,那个不是中括弧吗?
StringLen 是来判断字符数量的
如果你会正则的话就没什么难点了
用StringRegExp    正则是\[.{12}\]

fengzishao 发表于 2012-2-10 10:59:27

谢谢,这位朋友

skyfree 发表于 2012-2-10 11:03:56

_Main()
Exit

Func _Main()
        Local $str=""
        Local $r=_Judge($str)
        MsgBox(0,"",$r)
EndFunc

Func _Judge($str)
        If StringLeft($str,1)="[" And _
                StringRight($str,1)="]" And _
                StringInStr($str,"]")-StringInStr($str,"[")-1=12 Then
                Return True
        Else
                Return False
        EndIf
EndFunc

afan 发表于 2012-2-10 11:15:51

楼主的“多条件判断”skyfree 无疑给出了最贴切的答案~

fengzishao 发表于 2012-2-10 14:28:13

非常感谢各位,skyfree给的代码再次学到新的东西 ,

fengzishao 发表于 2012-2-10 16:57:02

_Main()
Exit

Func _Main()
      Local $str=""
                Local $r=StringRegExp($str,"\[.{12}\]")
                If $r=0 Then
             MsgBox(0,"提示","错误")
                Else
                     MsgBox(0,"提示2","正确")
          EndIf
EndFunc

表达式更简洁一些

附用表达式代码.要慢慢多学习一下.
页: [1]
查看完整版本: 请教--AU3同时多条件判断的问题--已解决