![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 16:13 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [求助]怎样用bat对齐文本? |
| 可打印版本 5,729 / 30 |
| 第1楼 wydos | 发表于 2006-12-13 07:15 |
| 中级用户 发帖 117 积分 304 | |
|
[求助]怎样用bat对齐文本? 文本内容形式是这样的:
新编中医临证备要 作者:卢祥之 SS号:10804820 索书号:R24/15 中医临床学基础 作者:湖南中医学院 SS号:10806223 索书号:R24/1 临床证治精论 作者:徐春家 秦群 SS号:10806254 索书号:R24/152 . . . 我想把它按类对齐,变成如下形式: 新编中医临证备要 作者:卢祥之 SS号:10804820 索书号:24/15 中医临床学基础 作者:湖南中医学院 SS号:10806223 索书号:24/1 临床证治精论 作者:徐春家 秦群 SS号:10806254 索书号:24/152 . . . . . [ Last edited by wydos on 2006-12-13 at 07:17 AM ] |
|
| 第2楼 a9319751 | 发表于 2006-12-13 07:19 |
| 中级用户 发帖 170 积分 439 | |
|
隐隐约约记得哪个能制造TAB跳格
好象是8个空格 |
|
| 第3楼 namejm | 发表于 2006-12-13 07:35 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
需要统计每一节字符串的最大长度才好排版。
|
|
| 第4楼 lxmxn | 发表于 2006-12-13 07:53 |
| 版主 发帖 4,938 积分 11,386 | |
|
不知道WMIC可不可以,问下版主就知道了。 |
|
| 第5楼 youxi01 | 发表于 2006-12-13 08:03 |
| 高级用户 发帖 247 积分 846 来自 湖南==》广东 | |
|
个人认为,纯粹的P很难实现,因为P很难判断变量的字节数,所以要借助于vbs。
说明:将要处理的文字保存为test.txt,本代码保存为:ok.bat [ Last edited by youxi01 on 2006-12-13 at 08:14 AM ] |
|
| 第6楼 electronixtar | 发表于 2006-12-13 09:15 |
| 铂金会员 发帖 2,672 积分 7,493 | |
汗,WMIC拿来处理文本~~~ |
|
| 第7楼 pengfei | 发表于 2006-12-13 12:09 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
|
只测试了你给的三行, 其他格式和特殊字符没有考虑. 请注意冒号全角和半角的区别. [ Last edited by pengfei on 2006-12-13 at 12:53 PM ] |
|
| 第8楼 zh159 | 发表于 2006-12-13 14:30 |
| 金牌会员 发帖 1,467 积分 3,687 | |
|
“delims=作者:SS号:索书号:”中有个缺点,只要某个位置有其中一种字符就导致缺失
可以先考虑将“作者:”“SS号:”“索书号:”替换为$后再处理 亮点:检测字节数 >Temp.txt set/p=!Temp_%1!<nul [ Last edited by zh159 on 2006-12-13 at 09:35 AM ] |
|
| 第9楼 HUNRYBECKY | 发表于 2006-12-13 21:53 |
| 银牌会员 发帖 442 积分 1,179 | |
|
都太棒了,我对FOR语句总是用的不好。想不到FOR语句用处这么大,学习了。
|
|
| 第10楼 HUNRYBECKY | 发表于 2006-12-13 22:14 |
| 银牌会员 发帖 442 积分 1,179 | |
Originally posted by youxi01 at 2006-12-13 08:03: |
|
| 第11楼 youxi01 | 发表于 2006-12-14 01:18 |
| 高级用户 发帖 247 积分 846 来自 湖南==》广东 | |
|
因为::在vbs中可以被认识(识别为换行),而rem却不能被vbs认识!
|
|
| 第12楼 youxi01 | 发表于 2006-12-14 01:22 |
| 高级用户 发帖 247 积分 846 来自 湖南==》广东 | |
|
7F的问题:要是书名中有E文字符或者数字,怎么解决?
8F用文件的大小来判断字节数,真是高! |
|
| 第13楼 qzwqzw | 发表于 2006-12-14 01:51 |
| 银牌会员 发帖 636 积分 2,343 | |
|
对齐还是先补后拆最省事。
|
|
| 第14楼 无奈何 | 发表于 2006-12-14 02:31 |
| 荣誉版主 发帖 356 积分 1,338 | |
|
zh159 兄 8 楼用字节数判长确是亮点,CMD 下字串汉字和英文字母长度都是 1 ,用字节判断很好的解决了这个问题。不过 CMD 下特殊字符实在是然人头疼的问题,我也一直没有找到好的方法。
本帖是很典型的格式化输出的问题,大多数语言 pringf 都能很好解决。 可以试试下面的 awk 的脚本: 用法:gawk -f script.awk file.txt gawk 下载:http://www.klabaster.com/progs/gawk32.zip [ Last edited by 无奈何 on 2006-12-14 at 03:23 AM ] |
|
| 第15楼 ccwan | 发表于 2006-12-14 02:44 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
恕我愚钝,兄的代码看不懂。
为防拍马的嫌疑,就不给兄加分了,见谅。 |
|
| 1 2 3 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |