[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理怎样实现多字符串的按TXT行数的规则替换?

X文本 有字符串:A101 - A200  如何把所有 A101 - A200 替换成 对应TXT文本   101行  到200行的数据呢?

以下演示一下: 把所有的A101-A110 变成A.txt文本第101-110行的数据  应该算是多字符串的替换
X.txt内容是:
T I `e_a` S('5','0','0','5','e','{c}/e','1','A101','1','1','-1','0','0','{K}','/e/{py}.html','{L}','','','','0','{c}/e','','0','A102','0','','','');
T I `e_a` S('6','0','0','6','A110','{c}/A101','1','index.html','1','1','-1','0','0','{K}','/f/{py}.html','{L}','','','','0','{c}/f','','A105','0','0','','','');
T I `e_a` S('7','0','0','7','A106','{c}/g','1','index.html','1','1','-1','0','A110','{K}','/g/{py}.html','{L}','','','','A103','{c}/g','','A108','0','0','','','');
T I `e_a` S('8','0','0','A107','h','{c}/h','1','index.html','1','A109','-1','0','0','{K}','/h/{py}.html','{L}','','','','0','{c}/h','','A104','0','0','','','');

A.txt  101-110行的内容是:
游戏
音 乐
电影
唱歌
跳舞
赛 车
汽车
酒 吧
娱乐
比 赛

得到新的bbb.txt:    所有的"A101" 变成 "游戏"  其他的都不变化

T I `e_a` S('5','0','0','5','e','{c}/e','1','游戏','1','1','-1','0','0','{K}','/e/{py}.html','{L}','','','','0','{c}/e','','0','音 乐','0','','','');
T I `e_a` S('6','0','0','6','比 赛','{c}/游戏','1','index.html','1','1','-1','0','0','{K}','/f/{py}.html','{L}','','','','0','{c}/f','','跳舞','0','0','','','');
T I `e_a` S('7','0','0','7','赛 车','{c}/g','1','index.html','1','1','-1','0','比 赛','{K}','/g/{py}.html','{L}','','','','电影','{c}/g','','酒 吧','0','0','','','');
T I `e_a` S('8','0','0','汽车','h','{c}/h','1','index.html','1','娱乐','-1','0','0','{K}','/h/{py}.html','{L}','','','','0','{c}/h','','唱歌','0','0','','','');

刚刚是10个字符串的文本替换 供演示用   现在我需要替换的那个文本是 100个变量   
100个变量  A101--A200      换成第101行--第200行对应的数据
如果更多的变量  能否设定一个范围呢? 比如A101--A400      换成第101行--第400行对应的数据

希望大家帮帮忙 谢谢了

以下  附上一个 单字符串的替换 想要的功能  改来改去还是不行。。。。
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f %%a in (a.txt) do (
  3.     for /f "delims=" %%b in (1.txt) do set "str=%%b"&echo !str:胃癌=%%a!
  4.    ))>>111.txt
复制代码

本帖最后由 w1983912 于 2011-5-22 00:45 编辑

谢谢楼上朋友   代码改后没有变化  并不能把字符串用其他TXT的指定行的数据覆盖

我要的是多个字符串替换并且是用TXT的指定行覆盖   不是单行的全部覆盖。。。。。。。。。。

如果可以单字符串(所有相同的) 用指定txt的指定行数据覆盖也可以啊  , 100个替换就用100个命令就可以了

深夜继续求助

TOP

谢谢 实现了

一行换4个以上重复的  倒 请问 不够的话 修改哪呢??

TOP

谢谢  可以了
刚刚我自己也用php代码也实现了。。。多文本中的多字符串 用指定的多txt的指定行 替换 显示并写入

TOP

返回列表