本帖最后由 zm900612 于 2011-5-28 18:57 编辑
问题一是仅删除相邻两行的<MATab>吗?而且这些<MATab>都是独占一行?如果真是如此,那倒不难:- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%a in (1.txt) do (
- if "%%a"=="<MATab>" (set /a n+=1) else set n=
- if !n! leq 1 echo %%a
- )
- pause
复制代码 问题二中的关键词如果一行最多只有一个,看上去也不是太难,不知是不是这样:- @echo off&setlocal enabledelayedexpansion
- for /f "delims=:" %%a in ('findstr /n .* 1.txt') do (
- set /a n+=1,h=%%a
- )
- if %n% geq 3 for /f "tokens=1* delims=:" %%a in ('findstr /n .* 1.txt') do (
- set "tmp=%%b</tabID>"
- if %%a neq %h% (
- echo;!tmp:^</tabID^>=!
- ) else echo;%%b
- )
- pause
复制代码
|