Board logo

标题: [文本处理] [已解决]批处理如何替换不文明词汇? [打印本页]

作者: ANSL    时间: 2022-5-27 13:53     标题: [已解决]批处理如何替换不文明词汇?

本帖最后由 ANSL 于 2022-5-31 21:12 编辑

输入一段话,如果输入这一段话里包含1.ini里的不文明词汇(把不文明词汇替换成*(假如1.ini里是不文明词汇表))然后把输入的这段话处理的最终结果输出
1.ini 格式:
sdd 大家 的机会
作者: wlmhit903    时间: 2022-5-27 14:53

for /f "delims=" %%i in(1.ini) do echo 美丽的%%1 >> 1.txt
作者: ANSL    时间: 2022-5-27 20:06

本帖最后由 ANSL 于 2022-5-27 20:27 编辑

回复 2# wlmhit903
这个代码不行呀!

作者: xczxczxcz    时间: 2022-5-28 10:10

美丽的诗句
美丽的电脑?
作者: ANSL    时间: 2022-5-28 13:25

本帖最后由 ANSL 于 2022-5-28 13:28 编辑

输入一段话,如果输入这一段话里包含1.ini里的不文明词汇(把不文明词汇替换成*(假如1.ini里是不文明词汇表))然后把输入的这段话处理的最终结果输出
1.ini 格式:
sdd 大家 的机会
作者: Batcher    时间: 2022-5-29 09:32

回复 1# ANSL


1.ini的格式:
sdd
大家
的机会

命令行工具 sed.exe
http://bcn.bathome.net/s/tool/index.html?key=sed

请参考Q-04和Q-05把bat、txt、ini文件都保存为ANSI编码:
https://mp.weixin.qq.com/s/Koje4FufWxWBs7ioDy_LJA
  1. @echo off
  2. cd /d "%~dp0"
  3. set "OldFile=1.txt"
  4. set "NewFile=2.txt"
  5. copy /y "%OldFile%" "%NewFile%"
  6. for /f "delims=" %%i in ('type "1.ini"') do (
  7.     echo 正在处理关键词:%%i
  8.     sed -i "s/%%i/\*\*/" "%NewFile%"
  9. )
复制代码

作者: ANSL    时间: 2022-5-29 10:40

回复 6# Batcher
这个可以,但是可以不用第三方吗?




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