找回密码
 加入
搜索
查看: 2138|回复: 3

[AU3基础] [已解决]判断字符串是否相同失败

[复制链接]
发表于 2013-12-1 20:50:23 | 显示全部楼层 |阅读模式
本帖最后由 king8462 于 2013-12-2 13:15 编辑

从文本文档中逐行读取字符串,然后与ini中的字段循环比较,如果相同则进行后续命令,但字符串明明相同却无法运行后续命令。

文本内容:
1.鲁迅的第一篇白话文小说是《狂人日记》
2.古文经学主张文化创新和社会改革
3.重农抑商是中国历代封建王朝最基本的经济指导思想

ini文件内容:
[answers]
《四库全书》汇集了从唐代到清朝的历代主要典籍=错
鲁迅的第一篇白话文小说是《狂人日记》=对
古文经学主张文化创新和社会改革=错

代码如下:
;搜索判断题题目并对比答案。
 $file = FileOpen("D:/desktop/2.txt")
  For  $i=1 To 3
   $line = FileReadLine($file,$i)
        $t=StringTrimLeft($line, 2)
        answer()
Next                



Func answer()  
        $var = IniReadSectionNames(@ScriptDir & "\2.ini")
For $i = 1 To $var[0]
         $var1 = IniReadSection(@ScriptDir & "\2.ini", $var[$i])
For $a = 1 To $var1[0][0]
;MsgBox(0,"1",$var1[$a][0]&$t)
If  $var1[$a][0] ==$t Then
MsgBox(0,"2",$var1[$a][1])                
$cd=$var1[$a][1]
EndIf        
Next                                
Next
EndFunc
发表于 2013-12-2 00:30:11 | 显示全部楼层
Func answer()
Local $i
;....
发表于 2013-12-2 11:39:17 | 显示全部楼层
_Answer('2.txt', '2.ini')

Func _Answer($File, $File_as)
        Local $aline = StringRegExp(FileRead($File), '(?m)^\h*\d+\.\h*(\V+?)\s*$', 3)
        If Not IsArray($aline) Then Exit MsgBox(48, '退出', '无试卷载入')
        For $i = 0 To UBound($aline) - 1
                Local $sAnswer = IniRead($File_as, 'answers', $aline[$i], '无该题')
                MsgBox(0, $aline[$i], $sAnswer)
        Next
EndFunc   ;==>_Answer
 楼主| 发表于 2013-12-2 13:13:48 | 显示全部楼层
多谢版主!正则太厉害了。连同第10题以后取题目的问题都帮我解决了。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-28 17:35 , Processed in 0.143208 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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