[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理如何从所有txt文件提取相应内容后,合并到一个txt文件?

从每个文件中找出同时含  ◆最新消息◆(或 ◆控盘情况◆ 或 ◆概念题材◆ 或 ◆  行业新闻  ◆ 或 ◆  大事提醒  ◆ 或 ◆  八面来风  ◆ 或 ◆  公司概况  ◆ 或 ◆项目投资◆ 或 ◆  行业地位  ◆ 或 ◆  信息快讯  ◆ 或 ◆ 回顾展望 ◆ )、   2011-08-25  及  环比   这三个关键提示词,

把  环比  这个词前后180个字符的内容,提取出来。

并且排除财务表格中的有关环比的内容

每个txt文件相应的内容提取之后,

间隔一行,合成一个txt文件,这个文件名称为  提取合成,存放路径为  桌面  文件夹

合成后的这个txt文件自动打开,自动为最前窗口。

2011-08-25这个日期要是可调节的。




例如,下面给的三个txt文件,提取合成后显示为:(如果文件没有相应的内容,就没有内容显示。)


☆曾用名: 中国联通
◆ 回顾展望 ◆               ◇万国测评制作:更新时间:2011-08-25◇
   实现服务收入136.00 亿元,同比增长235.2%,季度平均环比增幅达到31.7%。

  ☆曾用名: 双汇实业->双汇发展->S双汇
◆  行业新闻  ◆
●2011-08-25 8月猪肉价格重拾升势(上海证券报)
     进入8月份以后,猪肉价格又悄然重拾升势。国家统计局24日发布的50个城
   市主要食品平均价格变动情况(8月11日到20日)显示,猪肉后臀尖价格达到3
   1.18 元/公斤,环比上涨0.3%,五花肉价格为30.22元/公斤,环比上涨0.4%。
   在8月上旬,猪肉后臀尖的价格环比持平,但五花肉价格环比上涨0.1%。


附件在20楼

请老师在百忙中解答。

祝老师一切顺利,万事如意。
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

好厉害:):)

TOP

上面两个文件是一样的
不好意思

TOP

回复 21# magelit272


    本帖已由batman(威士)大师完美、胜利完成,完成了原创性的编写代码工作,处理两千多个.txt文件,深表感谢和衷心的祝贺

下面就是这历史性的原创代码,以batman大师的名字命名:
  1. @echo off&setlocal enabledelayedexpansion
  2. del new*>nul 2>nul
  3. (for /f "delims=" %%a in ('dir /on /b *.txt') do (
  4.   setlocal
  5.   for /f "delims=" %%b in ('type %%a^&echo ◆结尾◆') do (
  6.     if defined ok if not defined "%%b" echo,%%b&set "ok="&set ""%%b"=a"
  7.     set "str=%%b"
  8.     if "!str:☆曾用名=!" neq "!str!" set "bt=!str!"
  9.     for %%c in ("◆控盘情况◆" "◆成交回报(单位:万元)◆" "◆  大事提醒  ◆" "◆  公司概况  ◆" "◆ 回顾展望 ◆" "◆结尾◆") do if "!str:%%~c=!" neq "!str!" set "flag="&set "str1="
  10.     for %%c in ("◆最新消息◆" "◆概念题材◆" "◆  行业新闻  ◆" "◆  八面来风  ◆" "◆  信息快讯  ◆") do (
  11.       if "!str:%%~c=!" neq "!str!" set "flag=a"&set "bk=!str!"
  12.       if "!str:◆ 回顾展望 ◆=!" neq "!str!" set "flag=a"&set "bk=!str! "
  13.     )
  14.     if defined flag (
  15.       if "!str:2011-08-25=!" neq "!str!" if "!str!" neq "!bk!" set "str1=!str! "
  16.       if defined str1 (
  17.         if "!str:环比=!" neq "!str!" (
  18.           for %%c in ("!bt!" "!bk!" "!str1!" "!var!" "!str!") do if not defined %%c echo %%~c&set "%%c=a"
  19.           for %%c in (bt bk) do set "%%c="
  20.           set "ok=a"
  21.         )
  22.       )
  23.     )
  24.     set "var=!str!"
  25.   )
  26.   endlocal&echo   ----------------------------------------------------------------------
  27. ))>new
  28. move /y new new.txt
  29. start new.txt
复制代码
这个代码用于:股市关于万国测评的浩如烟海的f10资料的特别内容提取、合成以及自动打开。

TOP

本帖最后由 magelit272 于 2011-10-7 17:25 编辑

终于上传成功,谢谢老师们

请老师们继续解决我的问题

TOP

回复 19# Batcher


    好的
这次分卷压缩,共四卷:

TOP

回复 18# magelit272


压缩一下再上传,可以吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 magelit272 于 2011-10-7 15:36 编辑

由于文件大,删减,就不能完整展示信息

想了办法,也一直传不上去

我的QQ  515526247

用QQ可以传文件

TOP

600050里面有

TOP

本帖最后由 magelit272 于 2011-10-7 17:16 编辑

首先解决第一个问题:
在600050.txt里

◆ 回顾展望 ◆   
循环到  
◆  最新指标 (中期定期报告)  ◆  

即循环到最开头

.bat在
◆ 回顾展望 ◆
与相邻的
◆  最新指标 (中期定期报告)  ◆
之间
查找关键词   2011-08-25  环比

如果在相邻黑方块内查找到这两个关键词,就提取  环比  上下两行的内容

同理

在000895.txt里

◆  行业新闻  ◆
与相邻的
◆  大事提醒  ◆
之间
查找关键词   2011-08-25  环比

如果在相邻黑方块内查找到这两个关键词,就提取  环比  上下两行的内容

000026.txt查找不到那两个关键词,就不提取,不显示

如果相邻黑方块内  环比  关键词重复,就重复提取  环比  关键词上下两行的内容

还要提取☆这一行的内容

提取的内容之间空一行

这三个.txt文件提取后,合并成一个.txt文件


这样的.bat,怎么写呢?





提取的内容为:

☆曾用名: 中国联通
◆ 回顾展望 ◆               ◇万国测评制作:更新时间:2011-08-25◇
   实现服务收入136.00 亿元,同比增长235.2%,季度平均环比增幅达到31.7%。

  ☆曾用名: 双汇实业->双汇发展->S双汇
◆  行业新闻  ◆
●2011-08-25 8月猪肉价格重拾升势(上海证券报)
     进入8月份以后,猪肉价格又悄然重拾升势。国家统计局24日发布的50个城
   市主要食品平均价格变动情况(8月11日到20日)显示,猪肉后臀尖价格达到3
   1.18 元/公斤,环比上涨0.3%,五花肉价格为30.22元/公斤,环比上涨0.4%。
   在8月上旬,猪肉后臀尖的价格环比持平,但五花肉价格环比上涨0.1%。

TOP

回复 14# magelit272


你上传的3个附件,哪个里面有◆  大事提醒  ◆?

TOP

请老师先解决第一个问题:


怎么从txt文件,在黑方块  ◆  行业新闻  ◆  和  ◆  大事提醒  ◆  之间提取并显示含关键词  2011-08-25  环比  上下两行的内容?

这样的.bat,怎么写呢?

TOP

回复 12# FOR


    同意楼上的说法

TOP

没有超超超超超超超超超超超超超超超超超超超超超超超超超超超超超级理解能力的人是无法理解楼主的题意的。

TOP

请各位老师百忙中解决,

不胜感谢。

TOP

返回列表