Board logo

标题: [已结]批处理问题,内容加入txt中 [打印本页]

作者: sea1112     时间: 2008-11-2 19:18    标题: [已结]批处理问题,内容加入txt中

a.txt内容以下 标题请尽量表意( )、清晰,能大概反映帖子内容 答案:、明确 能大概反映帖子( ),而不要使用诸如"请帮忙 答案:、内容 。。。。。 。。。。。 请求帮助P的写法 要求:把答案写入前边的( )里 [ Last edited by HAT on 2008-11-3 at 19:43 ]

作者: dikex     时间: 2008-11-2 21:31
@echo off
setlocal enabledelayedexpansion
for /f "tokens=1* delims=:" %%i in ('findstr /n /c:"( )" a.txt') do (
	set /a num=%%i+1
	call :p %%i
	set qus=%%j
	call set qus=!qus:( =(%%ans%%!
	echo !qus!>>ans.txt
)
pause
goto :EOF

:p
for /f "tokens=1* delims=:、" %%a in ('more a.txt +%1 ^| findstr /c:"答案:、"') do (
	set ans=%%b
	goto :EOF
)
goto :EOF
生成的ans.txt为:
标题请尽量表意(明确)、清晰,能大概反映帖子内容
能大概反映帖子(内容),而不要使用诸如"请帮忙
[ Last edited by dikex on 2008-11-3 at 13:50 ]

作者: sea1112     时间: 2008-11-3 13:27
Originally posted by dikex at 2008-11-2 09:31 PM: [code] @echo off setlocal enabledelayedexpansion for /f "tokens=1* delims=:" %%i in ('findstr /n "( )" a.txt') do ( set /a num=%%i+1 call :p %%i set qus=%%j call set ...
我换了a.txt内容出错了。不知那里的事。 a.txt内容 第1题:转向轮摇摆的故障大部分是转向器和传动机构( )、连接松动等原因引起的, 答案:、间隙过大 第2题:以总成解体清洗、检查、调整为中心的保养称为( )保养。 答案:、三级 第3题:根据GB5768—1999(道路交通标志和标线)的规定,交通标志分为( )大类。 答案:、两 第4题:蓄电池在充电时,其内部的化学反应将外接电源的( )转变为化学能储存起来。 答案:、电能 第5题:水冷型增压中冷可将进气温度冷至( )左右, 答案:、90℃ 第6题:( )将发动机的动力传递给驱动车轮, 答案:、传动系 第7题:在制动过程中,当车轮抱死滑移时,车轮与路面的( )将完全消失。 P处理后只有这样的答案 第4题:蓄电池在充电时,其内部的化学反应将外接电源的(电能)转变为化学能储存起来。 什么123-567都没有了?

作者: dikex     时间: 2008-11-3 13:51
因为括号的问题,一些是全角,一些是半角 顶楼的是半角的,我就按半角的写了 用记事本的替换把“( )”全部替换为“( )”就可以了,改代码太麻烦…… 注意括号中必须有一个空格 P.S. 上面的代码调整了一点点,只是查找时精确一点,无啥影响 [ Last edited by dikex on 2008-11-3 at 13:55 ]

作者: sea1112     时间: 2008-11-3 18:21
好,明白了,谢谢,给你加分