标题: 求一修改TXT文件指定的某行的数字
[打印本页]
作者: yhshiro
时间: 2008-4-24 18:20
标题: 求一修改TXT文件指定的某行的数字
Quote: |
[标题][颜色=X]公 告
[标题][颜色=Y]广 告 |
|
我要修改上面这行的
X Y把它弄成随机的1~12的随机一个数字,但是2个数字不能一样
两行是分开的不在一起,要能指定修改第几行的这串数字。。。
上面红色的部分是不变的
作者: terse
时间: 2008-4-24 18:57
测试行号是3和4 不知道合你意思不
@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
set "str=%%i"
set/a m+=1,s+=1
if !m! equ 3 call:lp
if !s! equ 4 call:lp
echo !str!>>test1.txt
)
pause
goto :eof
:lp
set/a n=%random%%%12+1
if defined !n! goto lp
set str=!str:9]=%n%]!&set !n!=!n!
不指定行 也可以下面的 不知道你的X Y 确定否 改个通用的
@echo off&setlocal enabledelayedexpansion
for /f "tokens=1* delims=" %%i in (test.txt) do (
set str=%%i
if "!str:~0,8!"=="[标题][颜色=" call:lp
echo !str!>>test1.txt
)
pause
:lp
set/a n=%random%%%12+1
if defined !n! goto lp
set str=!str:~0,8!%n%!str:~9!
[
Last edited by terse on 2008-4-24 at 07:10 PM ]
作者: bat-zw
时间: 2008-4-24 19:04
如要重写a.txt就要另外修改
@echo off&setlocal enabledelayedexpansion
:begin
set /a a=%random%%%12+1,b==%random%%%12+1
if %a% equ %b% goto begin
for /f "delims=" %%i in (a.txt) do (
set str=%%i
set str=!str:X]=%a%]!
set str=!str:y]=%b%]!
echo !str!
)
pause>nul
[
Last edited by zw19750516 on 2008-4-24 at 09:52 PM ]
作者: yhshiro
时间: 2008-4-24 19:23
非常谢谢。。。
...不过好象有的还是对不住你。。我今天的分加完了。。
对不起,您最近 24 小时评分数超过 5 点 限制,请返回。
对不起哈
作者: slore
时间: 2008-4-24 20:42
貌似没有用delims==]的方式的……
[
Last edited by slore on 2008-4-24 at 08:46 PM ]