找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 27994|回复: 6

[文本处理] [已解决]批处理如何按照班级进行文本提取?

[复制链接]
发表于 2015-4-19 14:17:26 | 显示全部楼层 |阅读模式
本帖最后由 wangdao6699 于 2015-4-19 16:54 编辑

记事本内容:
姓名:王朗
年龄:13
性别:女
身高:120
成绩:80
班级:1

姓名:高空
年龄:6
性别:男
身高:90
成绩:86
班级:2

姓名:王品牌
年龄:13
性别:女
身高:120
成绩:80
班级:1

姓名:高龙
年龄:6
性别:男
身高:90
成绩:86
班级:3

。。。。。。。。

一共有3个班级,根据班级,将对应内容,保存到各个班级
如1.txt
姓名:王朗
年龄:13
性别:女
身高:120
成绩:80
班级:1

姓名:王品牌
年龄:13
性别:女
身高:120
成绩:80
班级:1

2.txt
姓名:高空
年龄:6
性别:男
身高:90
成绩:86
班级:2

3.txt
姓名:高龙
年龄:6
性别:男
身高:90
成绩:86
班级:3
.。。。。。

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2015-4-19 15:27:56 | 显示全部楼层
可以试试用for命令逐行读取文本并存入临时变量中,读到空行即判断一小节结束,再根据读入的班级写出到相应文本文件即可。
 楼主| 发表于 2015-4-19 15:40:45 | 显示全部楼层
回复 2# zcydez


    感谢您指点。。。
发表于 2015-4-19 15:43:01 | 显示全部楼层
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('type "班级名册.txt"') do (
  4. set "str=%%a"
  5. set s=!s!"%%a";
  6. if "!str:~,2!" equ "班级" ((
  7. for %%i in (!s!) do set "t=%%i" & echo,!t:~1,-1!
  8. echo,
  9. )>>"!str:~3!.txt"
  10. set s=
  11. ))
  12. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
wangdao6699 + 1 感谢分享

查看全部评分

 楼主| 发表于 2015-4-19 15:58:01 | 显示全部楼层
回复 4# pcl_test


    感谢您代码,运行有效
 楼主| 发表于 2015-4-21 10:52:55 | 显示全部楼层
回复 4# pcl_test


    假如只提取姓名,年龄,效果如下(试了几次都不。。。)
请问如何修改
    如1.txt
姓名:王朗
年龄:13

姓名:王品牌
年龄:13

2.txt
姓名:高空
年龄:6

3.txt
姓名:高龙
年龄:6
。。。
不好意思,给您添麻烦了。。。
发表于 2015-4-21 12:20:26 | 显示全部楼层
回复 7# wangdao6699
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in ('type "班级名册.txt"') do (
  4. set "str=%%a"
  5. set s=!s!"%%a";
  6. if "!str:~,2!" equ "班级" ((
  7. for %%i in (!s!) do (
  8. set "t=%%i"
  9. if "!t:~1,2!" equ "姓名" (echo,!t:~1,-1!
  10. ) else if "!t:~1,2!" equ "年龄" (echo,!t:~1,-1!)
  11. )
  12. echo,
  13. )>>"!str:~3!.txt"
  14. set s=
  15. ))
  16. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
wangdao6699 + 1 感谢分享

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 06:15 , Processed in 0.071784 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表