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

[文本处理] 批处理如何删除文本中以指定字符分割成两列的第二列内容为纯数字/纯字母的行

[复制链接]
发表于 2017-1-23 22:17:45 | 显示全部楼层
回复 33# Rasm


    不知道有红包奖励没(我只想吃个雪糕)
 楼主| 发表于 2017-1-26 17:44:57 | 显示全部楼层
回复 34# 老刘1号


    送你个敬业福
发表于 2017-1-26 20:38:43 | 显示全部楼层
回复 35# Rasm


    已经集齐了
 楼主| 发表于 2017-1-31 21:59:56 | 显示全部楼层
回复 2# flyinnet9


    123adfa

这种也是字母+数字的被过滤了,该怎么加进去
发表于 2017-2-1 00:29:27 | 显示全部楼层
回复 34# Rasm


    使用gawk,简单高效,删除纯数字和纯字母,只保留字母+数字的行。
  1. @echo off
  2. gawk -F"|" "BEGIN{IGNORECASE=1}$2~/[0-9][A-Z]|[a-z][0-9]/" 文本.txt>输出.txt
  3. pause
复制代码
使用纯P,代码稍微多点,删除纯数字和纯字母,只保留字母+数字的行。
  1. @echo off
  2. (for /f "tokens=1,2* delims=|" %%a in (文本.txt) do (
  3.     for /f "tokens=1,2* delims=0123456789" %%c in ("#%%b") do (
  4.         if not "%%c%%d"=="#" (
  5.             for /f "tokens=1,2* delims=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" %%A in ("#%%b") do (
  6.                 if not "%%A%%B"=="#" echo,%%a^|%%b
  7.             )
  8.         )
  9.     )
  10. ))>输出.txt
  11. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 11:27 , Processed in 0.009980 second(s), 7 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表