标题:
【出题】批处理如何对文章作折行处理?
[打印本页]
作者:
plp626
时间:
2011-3-3 01:15
标题:
【出题】批处理如何对文章作折行处理?
一篇txt文档,含有中文(占%30),也含有一些程序源代码(单词长度不超过16个字节,数字长度不超过12个字节),含有一些制表符,但有些行过长(假设最长1200个字符)
现在想把这些过长的行折到下一行,使得每一行长度为不超过80个光标的宽度(每行的字符串字节数不超过80);
但是,行末的数字,数学表达式(一般较短,不超过20个字节)不能被拆分,尽量不要让行末的英文单词被拆分,可以通过对“,”、“。”后多添加一个空格把这个单词全部放到下一行,而如果这个行末的单词过长,即使增加了2-4个空格也还是得被折到下一行,请用连接符“-”将它连接起来;
对于制表符也要考虑进去,不能使一行的单词与单词或汉字之间制表符(提示可以根据情况将它替换为1-8个空格)的距离发生变化;
行首不能以标点符号开头;
现在征集代码,需要能处理文档中的特殊符号,处理速度较快;
[
本帖最后由 plp626 于 2011-3-3 16:54 编辑
]
作者:
batman
时间:
2011-3-3 08:48
这可不是一般的难!先占位思考。。。
作者:
CrLf
时间:
2011-3-3 12:48
最简单的办法是扔到notepad里,windows心情好的时候会自动给过长的行加上换行符,狗日的自动“智能”断行终于有了点作用,话说我弃暗投明前可没少吃自动“智能”断行这诡异功能的苦,写代码的时候时不时给你断一下行,一调试就出错,烦不胜烦
作者:
Batcher
时间:
2011-3-3 12:56
标题:
回复 3楼 的帖子
而如果这个行末的单词过长,即使增加了2-4个空格也还是得被折到下一行,请用连接符“-”将它连接起来
notepad有这功能?
作者:
CrLf
时间:
2011-3-3 14:27
回4楼:不太清楚,不过从代码常被断行这一点上来看,应该是有吧。而且如果只是换行也就算了,notepad那是断行...着实可恶
作者:
Batcher
时间:
2011-3-3 23:23
标题:
回复 5楼 的帖子
你见过notepad断行的时候还给你自动加连接符?
作者:
plp626
时间:
2011-3-5 10:38
真的很难么?
作者:
netbenton
时间:
2011-3-10 21:46
要考虑制表符有点难,因为其在不同的位置所代替的空格数是不同的(可以是1~8),如果一行中有N个制符时,就求制符所在的位就够折腾的了
欢迎光临 批处理之家 (http://bbs.bathome.net/)
Powered by Discuz! 7.2