Board logo

标题: [文本处理] [已解決]批处理怎样删除两个指定字串间的字符? [打印本页]

作者: leo198444    时间: 2011-5-27 00:32     标题: [已解決]批处理怎样删除两个指定字串间的字符?

本帖最后由 leo198444 于 2011-5-27 02:28 编辑

你好

请问我要寻找删除<tabID>tbp0</tabID></MAButton>之间的字元
包括<tabID>tbp0</tabID></MAButton>自身也要删除

该怎么作?
  1.       <tabID>tbp0</tabID>
  2.       <buttonID>btnMAD</buttonID>
  3.       <buttonText></buttonText>
  4.       <fileName>C:\Program Files\LOOP Translation</fileName>
  5.       <arguments />
  6.       <workingDirectory></workingDirectory>
  7.       <iconFile />
  8.       <iconIndex>0</iconIndex>
  9.       <windowStyle>0</windowStyle>
  10.       <windowStyleEx>0</windowStyleEx>
  11.       <windowMoveDelay>1000</windowMoveDelay>
  12.       <runAsAdmin>false</runAsAdmin>
  13.     </MAButton>
复制代码
谢谢
作者: Batcher    时间: 2011-5-27 01:02

  1. sed "/<tabID>tbp0<\/tabID>/,/<\/MAButton>/d" 1.txt | more >2.txt
复制代码
http://bbs.bathome.net/thread-3981-1-1.html
作者: batman    时间: 2011-5-27 01:15

纯批的:
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%a in (a.txt) do (
  3.     set "str=%%a"&set "str=!str:*>=!"
  4.     set "a=!str:*<=!"
  5.     for %%a in ("!a!") do echo,!str:^<%%~a=!
  6. ))>b.txt
  7. start b.txt
复制代码

作者: leo198444    时间: 2011-5-27 01:32

本帖最后由 leo198444 于 2011-5-27 01:36 编辑

不能啊

试用上面两位的代码

文本都变成空的

请下载我上传的文本试试

感谢万分
http://leo1984.googlecode.com/files/leo1982.rar
作者: Batcher    时间: 2011-5-27 01:46

4# leo198444


1、请把测试文件放到顶楼
2、你用的哪个版本的sed?
作者: batman    时间: 2011-5-27 01:48

测试成功,不知道楼主你是怎么用的,文本怎么会变成空的,都没有对你的文本进行写入操作?
作者: batman    时间: 2011-5-27 02:10

本帖最后由 batman 于 2011-5-27 09:20 编辑

再来一个vbs正则的:
  1. Dim fso, vbstr
  2. Set fso = CreateObject("scripting.filesystemobject")
  3. vbstr = fso.OpenTextFile("a.txt", 1).ReadAll()
  4. Set RegEx = New RegExp
  5. regex.Global = True
  6. regex.Pattern = "<[^<>]+>|\s([^<>]+|\s)<[^<>]+>|\s"
  7. vbstr = regex.Replace(vbstr, "$1")
  8. fso.OpenTextFile("b.txt", 2, True).Write vbstr
  9. Set regex = Nothing
  10. Set fso = Nothing
  11. MsgBox "ok"
复制代码

作者: leo198444    时间: 2011-5-27 02:26

成功了
我sed.exe換上最新後就成功了

非常感謝樓上兩位大力幫助

我愛你們
作者: batman    时间: 2011-5-27 07:58

我晕,搞了半天看错题意,还以为是要删除所有的标签




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2