各位大佬怎么批量修改一个文本里多个关键词啊
bat吧
全部回复
仅看楼主
level 1
比如:A B C D E
分别把它们替换为:你 我 他 她 它
用什么方法可以啊
2020年05月26日 18点05分 1
level 9
@璐村惂鐢ㄦ埛_000076K馃惥 off
rem 替换字符
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@璐村惂鐢ㄦ埛_053Q95e馃惥 %z%
set "line=A B C D E"
set "line=%line:A=你%"
set "line=%line:B=我%"
set "line=%line:C=他%"
echo;%line%
pause
2020年05月27日 04点05分 3
谢谢大佬
2020年05月27日 07点05分
大佬不行啊
2020年05月27日 08点05分
@铸星龙神Ω 你变通一下啊,你再输出回去不就得了
2020年05月27日 14点05分
@就要金坷垃 关键是不会啊[泪]
2020年05月27日 14点05分
level 8
@璐村惂鐢ㄦ埛_000076K馃惥 off&title 替换字符
set fileP=%~dp0\String.txt
for /f "delims=" %%a in (%fileP%) do (
if "%%a" equ "A B C D E" set line=%%a
)
echo;before:%line%
set "line=%line:A=你%"
set "line=%line:B=我%"
set "line=%line:C=他%"
set "line=%line:D=她%"
set "line=%line:E=它%"
type %fileP%>%fileP%
echo;%line%>>%fileP%
echo;after:%line%
pause&exit
2020年05月28日 10点05分 4
谢谢大佬
2020年05月28日 15点05分
level 8
加强版
@璐村惂鐢ㄦ埛_000076K馃惥 off&title 替换字符&color F0
mode con cols=80 lines=20
setlocal EnableDelayedExpansion
set /p fileP=请输入要替换字符的文件路径:
if not exist "%~dp0\bakup" md "%~dp0\bakup"
copy %fileP% %~dp0\bakup >nul
copy %fileP% %~dp0\tmp.txt
type %fileP%>%fileP%
start "" "%~dp0\tmp.txt"
set /p str1=请把需要替换字符的那一行复制过来:
set /p str2=要替换这一行的那串字符的(紧挨着的,不能隔字符):
set /p str3=要把%str2%替换成什么:
for /f "delims=" %%a in (%~dp0\tmp.txt) do (
if "%%a" equ "%str1%" (
set line=%%a
set "line=!line:%str2%=%str3%!"
>>%fileP% echo !line!
) else (
set no=%%a
>>%fileP% echo !no!
)
)
start "" "%fileP%"
del /q %~dp0\tmp.txt&pause
2020年05月29日 12点05分 5
1