请教如何查找指定文本里的哪些行含有两个指定的字符
比如我有个一个文件1.txt里面可能有上千上W行的数据
每行数据都有符号 @
但有些行里有多个 @
我想输出含有两个或两个以有@符号的行到2.txt 我想到两种方法,一种是先FileReadline,接着用StringSplit("string","\@")分割,如果分割得到三部分以上,则说明改行含有两个或两个以有@符号,然后写到2.txt中。
另外一种,还是先FileReadline,然后StringInStr ( "string", "@","","","","数量" ),把数量大于2的行写到2.txt中 楼上的可行,另外可以把文档先读入,然后用@crlf 分割
利用数组,会块很多.. 本帖最后由 3mile 于 2011-1-25 10:15 编辑
#include <array.au3>
#include <file.au3>
Local $array
_FileReadToArray("aaa.txt",$array)
$hfile=FileOpen("bbb.txt",1)
For $i=1 To $array
StringRegExpReplace($array[$i],'@')
If @extended>1 Then FileWrite($hfile,$array[$i]&@crlf)
Next
fileclose($hfile)
本帖最后由 smartzbs 于 2011-1-25 11:24 编辑
#include <File.au3>
$sFile = "1.txt"
$sRead = FileRead($sFile, FileGetSize($sFile))
$aArray = StringRegExp($s, ".*@.*@.*", 3)
_FileWriteFromArray("2.txt", $aArray)
页:
[1]