标题: 如何提取一文本中,有匹配字符的行!
[打印本页]
作者: kdfk123
时间: 2007-10-11 21:47
标题: 如何提取一文本中,有匹配字符的行!
高人救命啊!我有一文本,内容是一行一行的!我想用批处理提取文本中有相应字符的行,另存起来,并在原文本中删除这些行!不知道能否实现!
我的文本中有些行带有空格,没有其他的特殊字符!
求高人能帮忙,小弟,我万谢!
作者: guixi
时间: 2007-10-11 23:10
echo off
for /f "delims=" %%a in (关键字.txt) do (
type test.txt |findstr /v "%%a" && echo %%a>>new.txt
type test.txt |findstr "%%a" && echo %%a>>new.txt
)
pause
未经测试
作者: kdfk123
时间: 2007-10-12 21:49
测试先!谢谢高人啊!
作者: kdfk123
时间: 2007-10-14 00:12
大侠不行啊!提取不出来!
我的文本内容的格式像这样子的!
111 434234 325343 432324
23543 32354 3242354 324453
43243 342323 32423 342 34
324234 324234 32423 3242
而且我最后,希望的是把提取出来的内容,再从原文本中删除的!你的代码里好象没有这样的命令吧!
作者: jmz573515
时间: 2007-10-14 20:28
m=inputbox("请输入关键字:","系统提示")
if m="" or m=false then wscript.quit
set fso=createobject("scripting.filesystemobject")
set file=fso.opentextfile("test.txt")
sm=file.readall
file.close
s=split(sm,vbcrlf)
yesm=filter(s,m)
nom=filter(s,m,false)
wscript.echo "包含【" & m & "】的行:" & vbcrlf & vbcrlf & join(yesm,vbcrlf)
wscript.echo "不包含【" & m & "】的行:" & vbcrlf & vbcrlf &join(nom,vbcrlf)
作者: kdfk123
时间: 2007-10-14 20:34
谢谢这位大侠!我先测试先哦!
作者: 不得不爱
时间: 2007-10-14 21:02
echo off
for /f "delims=" %%a in (关键字.txt) do (
type test.txt |findstr "%%a">>包括.txt
type test.txt |findstr /v "%%a">>不包括.txt
)
作者: kdfk123
时间: 2007-10-20 20:40
Originally posted by 不得不爱 at 2007-10-14 09:02 PM:
echo off
for /f "delims=" %%a in (关键字.txt) do (
type test.txt |findstr "%%a">>包括.txt
type test.txt |findstr /v "%%a">>不包括.txt
)
果然是高人啊!一下子解决了!真是太谢谢斑竹了!万万谢啊!
作者: slore
时间: 2007-10-20 21:04
findstr可以直接操作文本,不用一行行……
findstr "slore" 关键字.txt>包含.txt
findstr /v "slore" 关键字.txt>不包含.txt