kingfirekkk 发表于 2010-10-25 14:56:39

[已解决]以下为一段简单的源代码,请帮忙纠正错误,谢谢

本帖最后由 kingfirekkk 于 2010-10-25 15:03 编辑

小弟想判断在一段句子中,哪些值中含有“OK”的记录,但以下代码无法出我要的结果,不知道要怎么样改,是哪里出错了?请各位帮忙看看,谢谢
$test = xx()
MsgBox(0, "OK的记录数是:", $test)
Func xx()
        Dim $message='', $a
        $a = "OK你的样子"
        $a = "Fail你的头发"
        $a = "Fail你的品味"
        $a = "OK你的歌声"
        $a = "Fail你的身材"
        $a = "你的地方"
        $a = "房子"
        $a = "国家"
        For $i = 0 To $a
                If StringCompare($a[$i],"OK")>0 Then$message= $message&$a[$i] & @CRLF
                $i=$i+1               
        Next
        Return $message
EndFunc   ;==>xx
实际得出的结果如下图所示:


我自己想要的结果应该是以下才对!
OK你的样子
OK你的歌声

afan 发表于 2010-10-25 15:00:26

$test = xx()
MsgBox(0, 'OK的记录数是:', $test)
Func xx()
        Dim $message = '', $a
        $a = 'OK你的样子'
        $a = 'Fail你的头发'
        $a = 'Fail你的品味'
        $a = 'OK你的歌声'
        $a = 'Fail你的身材'
        $a = '你的地方'
        $a = '房子'
        $a = '国家'
        For $i = 0 To UBound($a) - 1
                If StringInStr($a[$i], 'OK') Then $message &= $a[$i] & @CRLF
        Next
        Return $message
EndFunc   ;==>xx

kingfirekkk 发表于 2010-10-25 15:03:25

啊,昏啊,就这一句,怎么会错误代码都没有呢?还是自己的基本功太差了。。。
For $i = 0 To UBound($a) - 1
谢谢版主啦。
页: [1]
查看完整版本: [已解决]以下为一段简单的源代码,请帮忙纠正错误,谢谢