[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 求对文本文件进行整理的批处理

求大师们为小弟解难,求一个对文本文件进行整理的批处理。要求是:删除文本文件中只有阿拉伯数字而不含其它任何字符的行。示例如下:
老槐树上吊着一个人。
这老槐树长在肖家镇的南街口,谁也说不上有多少年代了,它那满是皱纹的干裂了的树皮,就像一个受尽折磨的老人的面孔。
123456
被吊着的人看上去只有二十多岁,穿一身白色的符衣符帽,从这里可以断定他是城东吉祥镇白吉会的人。
45632
原来老孟赶车到过城东的小陈家店,认识陈宝义。这几天他给东家往城里倒腾东西,在城里住了两天,不了解乡里的情况
02560
在肖家镇一跺脚全县地皮要颤三颤的苏金荣!
以上是随便举个示例。各位大师已经看明白了。我要求删除文本文件中只有阿拉伯数字而不含其它任何字符的行。我在网上找了很多关于文本文件的整理软件,好像都没有这种整理动能。我想起了批处理之家,恳求大师们能不能用批处理解决这个问题。谢谢各位了。

  1. @echo off
  2. (for /f "delims=" %%a in ('findstr /bev "[0-9][0-9]*" a.txt') do (
  3. echo,%%a
  4. ))>b.txt
  5. pause
复制代码
回复 1# pwq
1

评分人数

    • pwq: 乐于助人技术 + 1

TOP

type a.txt | findstr /v "^[0-9][0-9]*$"
1

评分人数

    • pwq: 乐于助人技术 + 1

TOP

不用type,直接findstr应当也行

TOP

本帖最后由 WHY 于 2021-3-6 13:38 编辑

回复 2# qixiaobin0715


    a.txt 最后一行如果是纯数字行,且最后一行不带回车换行,findstr /e 匹配不到这一行。
type + 管道符 + findstr 可以避免这种情况。

TOP

是这样。批处理像传说的那样,坑不是一般的多。

TOP

已解决

本帖最后由 pwq 于 2021-3-6 14:48 编辑

首先谢谢二位大师的帮助。我将二位大师的批处理都下载了并且试了一下。qixiaobin0715大师的批处理能完美解决问题,成功了。WHY大师的批处理无反应,失败了。谢谢二位大师。看来批处理之家有能人,我更喜爱批处理之家了。谢谢二位大师,向你们学习。

TOP

回复 7# pwq
那是因为你不会用:3楼代码后面加上
>b.txt
试试

TOP

我将WHY大师的批处理后尾加了>b.txt再试了一下,成功了。感谢二位,我将二位的都收下了,谢谢二位。批处理之家有能人。

TOP

  1. findstr /v "^[0-9]*$" a.txt>b.txt
复制代码

TOP

回复 10# terse
不妥。空行没保留。
2楼代码也去掉了空行。

TOP

回复各位大师,出了怪事,先前我对二位大师写的删除阿拉伯数字的批处理文件作了成功的结认,今天想使用了突然发现不行了。我截取上来,给大师们试试。(我要删除14)

那刘中正原是黄埔军官学校的学生。据说有次蒋介石到学校
14
训话,见刘中正在太阳底下站了四个钟头一动也不动,很赏识他,当场赞扬了他几句,就因为这样,刘中正一毕业便当上了营长。

TOP

各位:很奇怪。我发上来又复制下来的却又能删除数字,怎么回事。为什么二位大师的批处理对我电脑里的文本文件中的数字删除不了,请大师先在自己电脑的文本文件实验成功再将成功的批处理传上来。我谢谢大家了

TOP

回复 12# pwq


请参考Q-04和Q-05把bat文件和txt文件都保存为ANSI编码:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

我刚才又试了一下,发现有这样的情况:自写的文本文件中数字行(行中不含任何字符)能用三位大师的批处理删除。PDF文件(尤其是扫描版)转换成的txt中数字行删除不了。大家有何不同看法。

TOP

返回列表