Board logo

标题: [文本处理] 批处理如何删除文本中的汉字? [打印本页]

作者: lateol    时间: 2013-7-14 14:38     标题: 批处理如何删除文本中的汉字?

本帖最后由 pcl_test 于 2016-8-4 12:22 编辑

在当前目录下所有txt文本中
内容全由英文 数字组成。
现在内容中包含有中文 在内 我要把他们全部清除
文字出现 随机位置 随机文字 随机数量。
如何用替换去除
作者: xxpinqz    时间: 2013-7-14 15:39

不知道理解的对不对,务必新建几个文本自测一下。
只针对你描述的英文,数字文本,如有标点,符号,请自行增减变量"分隔"
  1. @echo off
  2. set "分隔=a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9 :"
  3. for %%a in (*.txt) do (
  4.     (for /f "delims=" %%b in ('findstr /n .* "%%a"') do (
  5.         set "str=%%b"
  6.         set "hz=%%b"
  7.         setlocal enabledelayedexpansion
  8.         for %%c in (%分隔%) do set "hz=!hz:%%c= !"
  9.         for %%c in (!hz!) do set "str=!str:%%c=!"
  10.         set "str=!str:*:=!"
  11.         echo,!str!
  12.         endlocal
  13.     ))>$
  14.     move /y $ "%%a"
  15. )
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2