找回密码
 加入
搜索
查看: 4814|回复: 6

[AU3基础] 多文本文件,想搜索某关键词,并提出存到EXCEL(已在另帖完成)

  [复制链接]
发表于 2012-7-5 18:56:15 | 显示全部楼层 |阅读模式
本帖最后由 CCM 于 2012-7-12 15:28 编辑

前辈有留一个VBS可以配合EXCEL来大量批次安装打印机,所以我想透过搜索文本关键词把打印机资料抓出来,然後送到EXCEL内,只要关键词资料能抓出来,後面的就简单了。
$search=FileFindFirstFile("\path\*.txt")
If $search = -1 Then
MsgBox(0, "错误", "无任何文件或文件夹与指定的搜索字符串匹配")
Exit
EndIf
While 1
    Local $File = FileFindNextFile($Search)
    If @error Then ExitLoop
    MsgBox(4096, "找到的文件:", $File)
WEnd
我在论坛内找到上面的资料,可以读取文件夹内所有档案,但我不确定是读只档名还是有读文本内容
所以继续搜索论坛,发现可以应用stringregexp来找关键词,问题是我怎么兜,都兜不起来...

自己搞了四五个钟头...头很大,实在没想法,所以斗胆请高手能帮一下...

我要搜寻的资料是
預設印表機:HP LaserJet P3010 Series PCL 6 (PXXX)
我希望能把绿字部分抓出来,让我可以写入EXCEL就行了。
发表于 2012-7-5 20:10:31 | 显示全部楼层
楼主有没有把问题描述清楚了,你需要搜索的关键字在某些txt文件里面吗?然后你要把什么东西写入excel?包含关键字的文件名码?
 楼主| 发表于 2012-7-5 21:11:15 | 显示全部楼层
抱歉,我再补充一下
1.我有很多TXT的档案在某个资料夹内
2.这些TXT档案都是计算机的设定资料
3.其中有项资讯叫 "预设打印机:HP LaserJet P3010 Series PCL 6 (PXXX)"
4.我希望能搜寻每一个TXT,把预设打印机后面的打印机资料输出到EXECL或TXT档。
5.写入EXCEL我有测出来,但是怎么搜寻全部文本并把这行字抓出来的语法我自己测试不出来。
谢谢各位高手帮忙。
发表于 2012-7-6 01:21:47 | 显示全部楼层
本帖最后由 ashfinal 于 2012-7-6 01:25 编辑


#Include <File.au3>
#Include <Array.au3>
If FileExists(@ScriptDir&"\DoneTXT.txt") Then FileDelete(@ScriptDir&"\DoneTXT.txt")
$txt_File= _FileListToArray("D:\","*.au3",1) 
;_ArrayDisplay($txt_File)
For $i        =1 To $txt_File[0]
        $txt_Context= FileRead(FileOpen($txt_File[$i],0))
        $TrapArray = StringRegExp($txt_Context, '預設印表機:(.+\r\n)', 3)
        For $j = 0 To UBound($TrapArray) - 1
                FileWrite(FileOpen(@ScriptDir&"\DoneTXT.txt",1+8),$TrapArray[$j])
        Next
Next


稍微改下应该可以用
 楼主| 发表于 2012-7-6 09:17:57 | 显示全部楼层
本帖最后由 CCM 于 2012-7-6 09:22 编辑
$search = FileFindFirstFile("c:\scan\computer.txt")
While 1
        Local $File = FileReadLine($search)        
        MsgBox(4096, "找到的文件:", $File)
        
        $print = StringRegExp($File, '預設印表機:(.+\r\n)', 3)
WEnd
实在做不出来,所以先针对一个档案进行测试,目前msgbox可以list出每一行资料
但是StringRegExp这边都只显示空值 ,请问是那边出了问题?
发表于 2012-7-6 10:19:08 | 显示全部楼层
回复 5# CCM
$print 返回的是数组
 楼主| 发表于 2012-7-6 17:03:00 | 显示全部楼层
回复 6# netegg

因为今晚就要开工,没时间给我测试了,这次只好全手动安装啦。
等这次忙完再来研究,因为以後还用得着,谢谢大家。

PS好像也没解决,可能麻烦版主移到无意义区去,谢谢。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-6-12 07:19 , Processed in 0.084536 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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