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

[文本处理] [已解决]求教bat批量删除字元与符号

[复制链接]
发表于 2023-1-15 20:03:51 | 显示全部楼层 |阅读模式
本帖最后由 skpkmon 于 2023-1-16 07:41 编辑

请问大师,下面的字幕如何将   
  •   "符号与文字"一并删除?  即是批量删除字与符号:[悲伤音乐][盘丝大仙笑][盘丝大仙][老人] 等等……

    ---------------------------------------------------------
    1
    00:00:47,416 --> 00:00:49,541
    [悲伤音乐]

    2
    00:02:27,166 --> 00:02:28,750
    [盘丝大仙笑]

    3
    00:02:32,208 --> 00:02:33,666
    [盘丝大仙]好漂亮呀

    4
    00:03:28,166 --> 00:03:29,208
    [老人]各位客官

    5
    00:03:29,291 --> 00:03:32,916
    [老人]耽搁大家一会,很快就点着了

    6
    00:03:43,333 --> 00:03:45,875
    [老人]不好意思,对不起呀

    7
    00:03:46,250 --> 00:03:49,333
    阿伯,你这样点灯是点不着的
  • 评分

    参与人数 1PB +2 收起 理由
    Batcher + 2 感谢给帖子标题标注[已解决]字样

    查看全部评分

    发表于 2023-1-15 20:28:13 | 显示全部楼层

    1. 1
    2. 00:00:47,416 --> 00:00:49,541
    3. [悲伤音乐]

    4. 2
    5. 00:02:27,166 --> 00:02:28,750
    6. [盘丝大仙笑]

    7. 3
    8. 00:02:32,208 --> 00:02:33,666
    9. [盘丝大仙] 好漂亮呀

    10. 4
    11. 00:03:28,166 --> 00:03:29,208
    12. [老人] 各位客官

    13. 5
    14. 00:03:29,291 --> 00:03:32,916
    15. [老人] 耽搁大家一会,很快就点着了

    16. 6
    17. 00:03:43,333 --> 00:03:45,875
    18. [老人] 不好意思,对不起呀

    19. 7
    20. 00:03:46,250 --> 00:03:49,333
    21. 阿伯,你这样点灯是点不着的
    复制代码
    以ANSI编码格式保存为1.txt
    下载sed( http://bcn.bathome.net/tool/4.8/sed.exe ),执行:

    1. sed -i".bak" -r "s/\[.+\] ?//g" 1.txt
    复制代码
    之后,1.txt就是你要的结果,原文件变成了1.txt.bak

    评分

    参与人数 1技术 +1 收起 理由
    Batcher + 1 乐于助人

    查看全部评分

    发表于 2023-1-15 21:41:28 | 显示全部楼层
    本帖最后由 77七 于 2023-1-15 21:49 编辑
    1. @echo off
    2. cd /d "%~dp0"
    3. for /f "delims=" %%i in ('type 字幕.txt ^| findstr /n .* ') do (
    4.         set "str=%%i"
    5.         setlocal enabledelayedexpansion
    6.         set "str=!str:*:=!"
    7.         (echo "!str!" | find "]" && set "str=!str:*]=!")>nul
    8.         echo,!str!
    9.         endlocal
    10. )>>xxx.temp
    11. move /y xxx.temp 字幕.txt
    12. pause
    13. exit
    复制代码

    评分

    参与人数 1技术 +1 收起 理由
    Batcher + 1 乐于助人

    查看全部评分

     楼主| 发表于 2023-1-16 07:38:44 | 显示全部楼层
    多谢二位赐教!
    发表于 2023-1-16 08:46:51 | 显示全部楼层
    1. @echo off&setlocal enabledelayedexpansion
    2. (for /f "delims=" %%i in (1.txt) do (
    3.     set "str=%%i"
    4.     echo,!str:*]=!
    5. ))>2.txt
    复制代码

    评分

    参与人数 1技术 +1 收起 理由
    Batcher + 1 乐于助人

    查看全部评分

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

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

    GMT+8, 2026-3-19 06:17 , Processed in 0.021229 second(s), 9 queries , File On.

    Powered by Discuz! X3.5

    © 2001-2026 Discuz! Team.

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