标题: [求助]批处理删除文本前每行最前面指定数量的字符
[打印本页]
作者: w1314ich
时间: 2009-1-25 01:04
标题: [求助]批处理删除文本前每行最前面指定数量的字符
有一个文本,每行前面都有五个数字加一个TAB字符,我想批量删除它们该如何实现。(每行数字都是不一样的)
作者: slore
时间: 2009-1-25 01:09
set /?
按2下空格最后开始看……
作者: w1314ich
时间: 2009-1-25 01:12
看不太懂,能给详细点吗,麻烦大哥了
作者: yishanju
时间: 2009-1-25 02:40
作者: yishanju
时间: 2009-1-25 03:35
a.txt 内容:
41777 dddfd
78757 df
46565 sdfo9
35346 er
35555 weweeeeeeeeeeeeeeeeeeeeeeeee
34235 35
43643 dfffffffffd
35435 dfdsf
用FR 替换的话这样写:
fr a.txt -ric:"^[0-9]*\t" -t
作者: yishanju
时间: 2009-1-25 03:39
for /f "tokens=1,2*" %%i in (a.txt) do (
echo %%j>>b.txt
)
作者: w1314ich
时间: 2009-1-25 11:36
FR很好用,但是六楼的批处理用了之后有个很大的问题,如文本:
92045 林本石 85 203
93412 陈立声 98 291
用六楼的批处理处理后的结果:
林本石
陈立声
后面的 85 203
98 291
没有了,批处理应该怎么改下
作者: yishanju
时间: 2009-1-25 16:49
哈哈,所以说嘛,推荐用FR 可以省掉考虑很多事情。
你提问的时候应该把要修改的文本传上来一份,或者贴出类似一部份内容。别人才容易写对代码。
你自己多看看FOR 命令的帮助,论坛里的资料,例子非常多,学会for set findstr 几个命令足够你处理很多情况下的文本了。
[ Last edited by yishanju on 2009-1-25 at 17:05 ]
作者: slore
时间: 2009-1-25 17:34
@echo off
for /f "tokens=2 delims= " %%i in (a.txt) do (
echo %%i>>b.txt
)
delims=后面是Tab字符,不是8个空格