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

[文件操作] [已解决]批处理怎样按照指定规则替换GBK格式的TXT文本?

本帖最后由 w1983912 于 2011-4-10 17:31 编辑

(1, 0, 0, 50, '优 游', '{c}/a');
(2, 4, 2, 50, '优1游', '{c}/a/you5');
(3, 3, 5, 50, 'bbbva游', '{c}/b/o8o12u');
(4, 2, 9, 50, '优x 1游', '{c}/a/55555ou');
(5, 6, 2, 50, '优a5游', '{c}/a/y89999999');
(6, 2, 0, 50, '优 2游', '{c}/a/ccc222');
(7, 7, 2, 50, '优 d游', '{c}/d');
(8, 2, 8, 50, '优x游', '{c}/a/mmmxxx');
(9, 4, 1, 50, '优cccc', '{c}/b/567c');
(10, 5, 3, 50, 'aa00cc', '{c}/b/a0c');

'{c}/a'  这样的不变化  只有1个/   

比如 '{c}/a/you5'  从第一行开始变成   '{c}/a/a'  ----  '{c}/a/z'  -------  '{c}/a/0'   ------  '{c}/a/9'    一共 26+10个

变成以下
(1, 0, 0, 50, '优 游', '{c}/a');
(2, 4, 2, 50, '优1游', '{c}/a/a');
(3, 3, 5, 50, 'bbbva游', '{c}/b/a');
(4, 2, 9, 50, '优x 1游', '{c}/a/b');
(5, 6, 2, 50, '优a5游', '{c}/a/c');
(6, 2, 0, 50, '优 2游', '{c}/a/d');
(7, 7, 2, 50, '优 d游', '{c}/d');
(8, 2, 8, 50, '优x游', '{c}/a/e');
(9, 4, 1, 50, '优cccc', '{c}/b/b');
(10, 5, 3, 50, 'aa00cc', '{c}/b/c');

希望知道的朋友帮帮我 谢谢

本帖最后由 hanyeguxing 于 2011-4-10 13:02 编辑

要求:{c}前不得有/
  1. @echo off&setlocal enableDelayedExpansion
  2. set a=abcdefghijklmnopqrstuvwxyz0123456789
  3. (for /f "usebackq tokens=1* delims=/" %%a in ("1.txt") do (
  4.         set "b=%%b"
  5.         if "!b:~1,1!"=="/" (
  6.                 for %%c in (!b:~0^,1!) do set/a c=_%%c,_%%c=c+1
  7.                 for %%c in (!c!) do echo;%%a/!b:~0,1!/!a:~%%c,1!'^);
  8.                 ) else echo;%%a/!b:~0,1!'^);
  9. ))>"1_.txt"
复制代码
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

非常感谢 很好的代码 我在这请教半年 混到了4级。。。。却还是。。。。一无所知。。。
多谢帮忙

TOP

返回列表