标题: 【已解决】关于文件中指定内容替换的问题
[打印本页]
作者: zuoyuanchun
时间: 2009-2-26 01:43
标题: 【已解决】关于文件中指定内容替换的问题
源文件内容:
Q(0)="不装备法宝,将不能使用?"
A(0)="战斗技能"
Q(1)="在什么NPC那里可以用黯淡的内丹兑换想要的骑宠唤灵符?"
A(1)="石塘县封妖师"
Q(2)="以下哪个描述是正确的?"
A(2)="红名攻击白名会增加罪犯值"
Q(3)="提升官府声望可以获得哪些职业的法宝?"
A(3)="力士,游侠"
Q(4)="打开礼仪动作界面是哪个快捷键? "
A(4)="P键"
……
……
替换成:
@@不装备法宝,将不能使用?
战斗技能
@@在什么NPC那里可以用黯淡的内丹兑换想要的骑宠唤灵符?
石塘县封妖师
@@以下哪个描述是正确的?
红名攻击白名会增加罪犯值
@@提升官府声望可以获得哪些职业的法宝?
力士
游侠
@@打开礼仪动作界面是哪个快捷键?
P键
问题好像很复杂,况且我对批处理不太了解,多谢大家帮忙
补充:文件名是1.txt
测试了两位的不好用啊
还有这里面的问题里面有数字的,但是这些数字不能删除的。
[
Last edited by zuoyuanchun on 2009-2-27 at 04:30 ]
作者: netbenton
时间: 2009-2-26 02:34
标题: 没还测试过,不知行不?
@echo off&setlocal enabledelayedexpansion
for /f "tokens=1,* delims==" %%a in (源文件) do set str=%%a&call :sub!str:~0,1! %%~b
goto :eof
:subQ
echo @@%*
goto :eof
:subA
echo.%1
shift
if "%1"=="" goto :eof
goto :subA
[
Last edited by netbenton on 2009-2-26 at 12:12 ]
作者: lxmxn
时间: 2009-2-26 05:25
sed "s/^Q([0-9]*)=\x22/@@/;s/^A([0-9]*)=\x22//;s/\x22$//" your_text_file
作者: zuoyuanchun
时间: 2009-2-26 08:49
http://upload.cn-dos.net/img/1331.txt
我已经上传上来了,大家直接帮忙编写个批处理处理一下吧,谢谢
作者: netbenton
时间: 2009-2-26 14:11
@echo on&setlocal enabledelayedexpansion
(
for /f "tokens=1,* delims==" %%a in (ch.txt) do set str=%%a&call :sub!str:~0,1! %%~b
)>ch2.txt
pause
goto :eof
:subQ
echo @@%*
goto :eof
:subA
echo.%1
shift
if "%~1"=="" goto :eof
goto :subA
作者: moniuming
时间: 2009-2-26 22:51
@echo off
setlocal enabledelayedexpansion
set "srcfl=1.txt"
for /f "tokens=1,* delims==" %%a in (%srcfl%) do (
set "str=%%a"
if /i "!str:~,1!"=="q" (
echo.@@%%~b
) else (
echo.%%~b
)
)>>11.txt
start 11.txt
作者: tireless
时间: 2009-2-27 01:22
@echo off
(
for /f "tokens=1,* delims==" %%a in (1.txt) do (
if "%%a" gtr "Q" (echo @@%%~b) else echo %%~b
)
)>1_new.txt
作者: zuoyuanchun
时间: 2009-2-27 04:30
Quote: |
Originally posted by moniuming at 2009-2-26 22:51:
[code]@echo off
setlocal enabledelayedexpansion
set "srcfl=1.txt"
for /f "tokens=1,* delims==" %%a in (%srcfl%) do (
set "str=%%a"
if /i "!str:~,1!" ... |
|
这个不错,至少能看懂是什么意思,学习了
作者: terse
时间: 2009-2-27 04:32
@echo off
(for /f "tokens=1,2* delims=()=" %%i in (1.txt) do (
if /i "%%i"=="Q" (echo @@%%~k) ELSE echo %%~k
))>1_new.txt
pause
作者: netbenton
时间: 2009-2-27 09:06
Quote: |
...
@@在什么NPC那里可以用黯淡的内丹兑换想要的骑宠唤灵符?
石塘县封妖师
@@以下哪个描述是正确的?
红名攻击白名会增加罪犯值
@@提升官府声望可以获得哪些职业的法宝?
力士
游侠
@@打开礼仪动作界面是哪个快捷键?
P键
... |
|
请问楼主红色部分是不是要换行呀?