中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 请教一个按文本分割的问题 上一主题 | 下一主题
eless
新手上路





积分 7
发帖 7
注册 2010-3-9
状态 离线
『楼 主』:  请教一个按文本分割的问题

看到坛子里wydos老师有个分割章节的列子

@echo off
setlocal ENABLEDELAYEDEXPANSION
title wydos制作
for /f "tokens=1,*" %%i  in (test.txt) do (
set a=%%i
set l=!a:~0,1!!a:~-1!
if !l!==第章  set filename=%%i
echo   %%i %%j>>!filename!.txt
)
endlocal

用来分割章节

第一章 入狱少年

就这样城北监狱迎来了他的新客人一个19岁的杀人犯――萧天。
                             第二章 入狱检查

就成了省里关押重型犯的唯一监狱,凡是在这里服刑的人员,都是曾经在社会上惹起腥风血雨的人物。
                            第三章 南北大院

    城北监狱以中心操场篮球场人为分成两个大院,南院和北院。
  
                            第四章 李东其人

    萧天、李东、张刚和王森四人被一个管教领着和其他人分开后,就朝着南院走去。一路“咣锒――咣锒”的脚镣声伴着四人向监狱的深处走去。

---------------------------------------------------------------------


我遇到的一个分割情况是一个固定的分割符字符,借用上面的情况



我是分割符123

    “现本席宣判萧天,男,19岁,东北财经大学学生,于1998年5月4日谋杀中国籍男子李英男,……判有期徒刑20年,剥夺政治权利5年……”
    站在被告席上的萧天漠然的听着法庭对他的判决,似乎所一切都与他无关似的。一米七高的身材衬托的是与他19岁年龄不相称的冷静。
       一个是曾经身为武警23岁的李东,在一次执行任务过程中,因战友被犯罪分子杀害,一时愤怒开枪打死了被害战友身边所有的人,其中包括两个无辜的民工,被判入狱15年。
    萧天不顾两人诧异的目光又望着窗外,黑漆漆的城北监狱大门缓缓打开,就这样城北监狱迎来了他的新客人一个19岁的杀人犯――萧天。
                             我是分割符456

    城北监狱始建于60年代末,原来只是H市的一个看守所,后来随着犯罪人数的增多,逐步改建成监狱。80年代初,城北监狱正式“挂牌”成立。后随着改革开放,在中央“严打”整治过程中,关押一批刑法较重的罪犯。而后这里逐渐就成了省里关押重型犯的唯一监狱,凡是在这里服刑的人员,都是曾经在社会上惹起腥风血雨的人物。
                            我是分割符789

--------------------
以上以“我是分割符”作为标记进行文件分割,文件命名方式也如原wydos老师的例子。请教在基础上该做哪些修改?

2010-3-22 14:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 2 楼』:  

set l=!a:~0,1!!a:~-1!
if !l!==第章  set filename=%%i

这里改成
if "!a:~0,5!"=="我是分割符"  set filename=%%i
如果以"我是分割符789"为文本名,则 set filename=%%i
如果以"789"为文本名,则 set filename=!a:~5!

例如:
@echo off&setlocal ENABLEDELAYEDEXPANSION
(for /f "tokens=1,*" %%a in (test.txt) do (
set a=%%a&if "!a:~0,5!"=="我是分割符" set f=!a:~5!.txt
echo %%a %%b))>>!f!
[ Last edited by Hanyeguxing on 2010-3-22 at 15:31 ]



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-3-22 15:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
eless
新手上路





积分 7
发帖 7
注册 2010-3-9
状态 离线
『第 3 楼』:  

感谢孤星 解决了我的问题

看了你的解释,终于有点明白%%和~的大概意思了。。。

2010-3-22 15:34
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: