中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-12 21:46
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 求助:如何批量删除文件名中的半角字符?
可打印版本  928 / 2
第1楼 pkto 发表于 2009-11-04 09:08
初级用户 发帖 62 积分 62
求助:如何批量删除文件名中的半角字符?
如题。
有若干文本文件,但文件名中总掺杂若干不规则的半角字符,如:

张^#$22三.txt
李四@!>11pu.txt
<51m周六.txt
67d王二egr.txt……等,现要求将这些文件名修正为:

张三.txt
李四.txt
周六.txt
王二.txt
……

请教达人,如何实现?

现有一个代码:
@echo off
for %%a in (*.txt) do (
set "str=%%~na"
call set "str=%%str:%%需要替换的字符=%%"
call ren "%%a" "%%str%%.txt"
)

pause

可否在以上代码基础上实现需求?

[ Last edited by pkto on 2009-11-4 at 09:10 ]
第2楼 Evangel 发表于 2009-11-04 17:48
初级用户 发帖 95 积分 145
总感觉工作量好大!是不是有必要建立一个类似于字典的东西用来提供字符的筛选?提供C语言字典……
第3楼 pkto 发表于 2009-11-05 07:56
初级用户 发帖 62 积分 62
嗯……偶想,可能需要类似fr所特有的正则替换符吧,否则光是建立半角字符,就是一件很繁琐的工作了……
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023