请教取某文件内指定字符串后面内容并生成新文件
文件A。TXT内包含 Processor: Intel(R) Atom(TM) CPU N450 @ 1.66GHz (2 CPUs)如何取 Processor:这一行后面的内容并生成到新的文件B。TXT $test = StringReplace(FileRead(@ScriptDir&'\a.txt'), "Processor: ",'')
$file = FileOpen(@ScriptDir&"\b.txt", 1)
FileWrite($file,$test)
FileClose($file) 本帖最后由 lsqyx528 于 2010-9-9 11:23 编辑
回复 2# xlcwxl
楼上的测试不通。自己写了个:Local $test = StringRegExp(FileRead(@ScriptDir & '\a.txt'), "Processor: (.+)", 3)
If IsArray($test) Then
Local $file = FileOpen(@ScriptDir & "\b.txt", 1)
FileWrite($file, $test)
FileClose($file)
EndIf
本帖最后由 newuser 于 2010-9-9 14:56 编辑
回复 3# lsqyx528
阁下的这个也不通啊?
不好意思!理解错了,以为是指定字符串后的所有内容都到新b.txt呢?原来只是后面的1行内容,正则太神奇! 回复 3# lsqyx528
能指定读取2个字符串后的内容既它们之间的内容生成1个新的文本文件吗? 回复 5# newuser
stringregexp('str',.{2}(.+),3) 回复 5# newuser
没有太懂你的提问。如果是说要读取$A和$B中间的内容的话:Local $A = "aaa"
Local $B = "bbb"
Local $test = StringRegExp(FileRead(@ScriptDir & '\a.txt'), $A & "(?s)(.+)" & $B, 3)
If IsArray($test) Then
Local $file = FileOpen(@ScriptDir & "\b.txt", 1)
FileWrite($file, $test)
FileClose($file)
EndIf 回复 7# lsqyx528
非常谢谢!
我的要求是这样的,假设有这样一个TXT:
DFSA
FSD
你好
中国
加油
保护钓鱼岛是所有中国人的责任
dfadfdfs
df3
dfs
能否将FSD和dfadfdfs中间的内容截取出来并保存为1个新的TXT. 应该是要用正则表达式 回复 8# newuser
#include <Array.au3>
$str="DFSA"& _
"FSD"& _
"你好"& _
"中国"& _
"加油"& _
"保护钓鱼岛是所有中国人的责任"& _
"dfadfdfs"& _
"df3"& _
"dfs"
$txt=stringregexp($str,'(?ms)FSD(.*)dfadfdfs',3)
_arraydisplay($txt) 正则表达式是不是很难掌握啊
页:
[1]