|
本帖最后由 lusheng0028 于 2011-7-8 16:31 编辑
#include <file.au3>
#Include <Array.au3>
Dim $fwrite ;定义要存入的文件变量
Dim $file ,$aArray,$temp ,$i =2
Local $time=TimerInit()
$fwrite=FileOpen("e:\Function.sql",1) ;打开或创建新文件Function.sql
If @error Then ;判断打开或创建新文件Function.sql是否失败
MsgBox(0,"error","打开或创建新文件Function.sql失败")
Else
$file=FileOpenDialog("选择要读取的文本文件","","(*)") ;打开选择的文件Function.sql
If @error Then ;判断打开选择的文件是否失败
MsgBox(0,"error","文件打开失败")
Else
_FileReadToArray($file,$aArray)
;删除总行数,避免排序出错
_ArrayDelete($aArray,0)
Local $rows = UBound($aArray)
For $i = 1 To $rows-1
$temp = StringRegExp($aArray[$i], '\bprompt\w*\b', 1) ; 检查字串是否符合给定的正则表达式\bprompt\w*\b
If $temp==0 Then ;0(不匹配)
_ArrayDelete($aArray,$i)
EndIf
Next
_FileWriteFromArray($fwrite,$aArray)
FileFlush($fwrite) ;刷新文件缓冲器中的数据到磁盘.
FileClose($file) ;关闭选择文件
FileClose($fwrite) ;关闭要写入的文件
EndIf
EndIf
$G =TimerDiff($time)
MsgBox(0,"用时:" ,$G )
-----------------------------------------------------------------------------------------------
老报这个错:
$temp = StringRegExp($aArray[$i], '\bprompt\w*\b', 1)
$temp = StringRegExp(^ ERROR
------------------------------------
程序主做的是从一个文本删包函(prompt)字符的行,然后生成一个新的文件 |
|