关于非数组变量的错误,谁可以帮我纠正一下?[已解决]
本帖最后由 haebong87 于 2011-7-14 22:02 编辑如题,求纠正,在这个基础上修改一下可以吗?$file = fileopen("test.txt",0)
dim $n=1
$str = filereadline($file,$n)
$nums=stringregexp($str,'.+?\|\d+\|(\d+)',3)
$nums1=stringregexp(filereadline($file,$n+1),'.+?\|\d+\|(\d+)',3)
$result = StringCompare($nums,$nums1)
If $result=0then
msgbox(0,"Test","false")
elseif $result <>0then
msgbox(0,"Test","Ture")
endif下面是3mile老师给我修改的,但是由于本人刚入门,还看不懂能否帮我解释一下?这个太复杂了。#include <array.au3>
$txt="苹果|1|2|"&@CRLF _
&"西瓜|1|3|"&@CRLF _
&"香蕉|2|4|"
;====将字符串定义成多维数组====
Local $arr_master=StringSplit($txt,@CRLF,2+1)
If @error Then Exit
Local $cols=StringSplit(StringTrimRight($arr_master,1),"|",2)
$cols=UBound($cols)
Local $array[$cols]
for $i=0 to UBound($arr_master)-1
$temp=StringSplit(StringTrimRight($arr_master[$i],1),"|",2)
for $n=0 to UBound($temp)-1
$array[$i][$n]=$temp[$n]
Next
Next
_ArrayDisplay($array)
;====定义数组结束====
;====判断====
for $i=0 to UBound($array)-2
for $n=0 to UBound($array,2)-1
if $array[$i][$n]=$array[$i+1][$n] then
msgbox(0x40000,"",$array[$i][$n]&" = " & $array[$i+1][$n])
Else
msgbox(0x40000,"",$array[$i][$n]&ChrW(8800) & $array[$i+1][$n])
EndIf
Next
Next下面的一段是将每一个数组都进行对比,但是我需要的是将每一行的第一个分隔符后面的数组进行对比,然后得出结果。 坐等纠正。。。。。 #include <array.au3>
$txt="苹果|1|2|"&@CRLF _
&"西瓜|1|3|"&@CRLF _
&"香蕉|2|4|"
;====将字符串定义成多维数组====
Local $arr_master=StringSplit($txt,@CRLF,2+1)
If @error Then Exit
Local $cols=StringSplit(StringTrimRight($arr_master,1),"|",2)
$cols=UBound($cols)
Local $array[$cols]
for $i=0 to UBound($arr_master)-1
$temp=StringSplit(StringTrimRight($arr_master[$i],1),"|",2)
for $n=0 to UBound($temp)-1
$array[$i][$n]=$temp[$n]
Next
Next
_ArrayDisplay($array)
;====定义数组结束====
;====判断====
for $i=0 to UBound($array)-2
;for $n=0 to UBound($array,2)-1
if $array[$i]=$array[$i+1] then
msgbox(0x40000,"",$array[$i]&" = " & $array[$i+1])
Else
msgbox(0x40000,"",$array[$i]&ChrW(8800) & $array[$i+1])
EndIf
;Next
Next 回复 2# haebong87
在坐等的时间里,按按F1看看帮助就知道了
上面3Smile的代码没有什么复杂的呀,都是最基本的代码,你还要别人怎么帮你呢?
每行都给你注释下? 谢谢谢谢,那我之前写的哪里有问题能解释一下么?
页:
[1]