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

[文本处理] [已解决]批处理如何删除文件夹内包括子文件夹下所有文本中这些字符

本帖最后由 DDDYJQ1 于 2021-3-12 20:52 编辑

网上下载下来的文件中经常含有
“
”
‘
’
 
·
…
<

&#57003 ;
&#xe98d ;
&#xea6b ;
&#55365 ;
&#56452 ;
&#55405 ;
&#56326 ;
&#56817 ;
&#xef14 ;
&#55378 ;
&#56938 ;
&#56471 ;
&#xe58e ;
&#xe236 ;
&#xe20a ;
&#56879 ;(注分号前没有空格,故意加上去的,要不然是乱码)
这类字符,如何批量删除?也就是说批量删除&与;之间所有字符先谢了

谢谢,太好用了

TOP

呃~不通用,用这个看看
  1. //&cls&dir /b /s /a-d *.txt|cscript -nologo -e:jscript "%~f0"&pause&exit
  2. function reStr(file){
  3.     var f = fso.opentextfile(file, 1);
  4.     str = f.ReadAll().replace(/&[^&]+;/g, '');
  5.     f.Close();
  6.     var f = fso.opentextfile(file, 2);
  7.     f.Write(str);
  8. }
  9. var fso = new ActiveXObject('Scripting.FileSystemObject');
  10. while(!WScript.StdIn.AtEndOfStream)reStr(WScript.StdIn.ReadLine());
复制代码

TOP

看不到效果

TOP

需要sed工具,论坛上面在线第三方下载搜索sed下载,放入C:\Windows\System32目录或要处理的目录
或下面的直接保存bat
  1. @echo off
  2. for /f "delims=" %%i in ('dir /b /s /a-d *.txt') do (
  3.          sed -i "s/^&[^&]*;//g"  %%i
  4. )
  5. pause
复制代码

TOP

第一个版本是陈寿写在《三国志•姜维传》里面的:
''时天水太守适出案行,维及功曹梁绪、主簿尹赏、主记梁虔等从行。太守闻蜀军垂至,而诸县响应,疑维等皆有异心,于是夜亡保上邽。维等觉太守去,追迟,至城门,城门已闭,不纳。维等相率还冀,冀亦不入维。维等乃俱诣诸葛亮。维等相率还冀,冀亦不入维。维等乃俱诣诸葛亮。会马谡败于街亭,亮拔将西县千馀家及维等还,故维遂与母相失。''

TOP

请问楼上的要怎么用?

TOP

cd跳转目录
  1. for /f "delims=" %i in ('dir /b /s /a-d *.txt') do sed -i "s/^&[^&]*;//g"  %i
复制代码
或注册表备用,保存reg,鼠标右键在目录打开
  1. Windows Registry Editor Version 5.00
  2. [HKEY_CLASSES_ROOT\Directory\Background\shell\打开CMD]
  3. "ShowBasedOnVelocityId"=dword:00639bc8
  4. [HKEY_CLASSES_ROOT\Directory\Background\shell\打开CMD\command]
  5. @="cmd.exe /s /k pushd \"%V\""
  6. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\Shell\打开CMD]
  7. "ShowBasedOnVelocityId"=dword:00639bc8
  8. [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Directory\Background\Shell\打开CMD\command]
  9. @="cmd.exe /s /k pushd \"%V\""
复制代码

TOP

可以传个样本文件做测试用!
这些HTML entity reference最好保留吧,否则会丢失字符,内容缺失了.解码后例如:
  1.  
  2. ·
  3. <
复制代码
微信:flashercs
QQ:49908356

TOP

返回列表