找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 28773|回复: 8

[文本处理] [已解决]批处理怎样实现有规律的文本替换?

[复制链接]
发表于 2011-6-10 18:09:25 | 显示全部楼层 |阅读模式
下面是txt文档里面的内容,很有规律:

<a title="搜狐" href="http://www.sohu.com/info.jsp?id=332">搜狐</a>
<a title="百度" href="http://www.baidu.com">百度</a>
<a title="网易" href="http://www.163.com">网易</a>

想把他变成下面的格式,并生成在另外一个文档里面

搜狐==http://www.sohu.com/info.jsp?id=332==搜狐
百度==http://www.baidu.com==百度
网易==http://www.163.com==网易


顺祝大家周末愉快哦!
改主题帖主要是网址后面有路径的话批处理就很难处理,望得到帮助,谢谢

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2011-6-10 18:56:38 | 显示全部楼层
我来帖个代码
仅作演示
不生成文本:

  1. @echo off
  2. for /f delims^=^"^>^<^ tokens^=2^,4^,5 %%i in (test.txt) do echo %%i==%%j==%%k
  3. pause
复制代码
发表于 2011-6-10 19:20:43 | 显示全部楼层
  1. (for /f "tokens=3,5,6 delims==<> " %%i in (a.txt) do echo,%%~i==%%~j==%%~k)>b.txt
复制代码
 楼主| 发表于 2011-6-10 19:32:56 | 显示全部楼层
3# 601997526


好像不行,我主题帖更正了一下!
发表于 2011-6-10 21:44:42 | 显示全部楼层
  1. @echo off&setlocal EnableDelayedExpansion
  2. for /f "delims=" %%i in (a.txt) do (set a=%%i
  3. set a=!a:*"=!
  4. set a=!a:" href=!
  5. set a=!a:"http:==http:!
  6. set a=!a:">===!
  7. set a=!a:^</a^>=!
  8. echo !a!
  9. )>b.txt
  10. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2011-6-19 03:03:41 | 显示全部楼层
5# 601997526


下面是txt文档里面的内容,很有规律:

<a title="搜狐" href="http://www.sohu.com/info.jsp?id=332">搜狐</a>
<a title="百度" href="http://www.baidu.com">百度</a>
<a title="网易" href="http://www.163.com">网易</a>

想把他变成下面的格式,并生成在另外一个文档里面:

搜狐==http://www.sohu.com/info.jsp?id=332==搜狐
百度==http://www.baidu.com==百度
网易==http://www.163.com==网易


顺祝大家周末愉快哦!
改主题帖主要是网址后面有路径的话批处理就很难处理,望得到帮助,谢谢
发表于 2011-6-19 10:28:09 | 显示全部楼层
  1. sed -r "s/^<a title=\x22(.*)\x22 href=\x22/\1==/; s/\x22>(.*)<.*/==\1/" a.txt | more >b.txt
复制代码
http://bbs.bathome.net/thread-1114-1-1.html

评分

参与人数 1技术 +1 收起 理由
fanfande + 1 谢谢版主

查看全部评分

 楼主| 发表于 2011-11-24 16:03:44 | 显示全部楼层
回复 7# Batcher


    请问版主sed.exe是不是一定要放在system32文件夹里面
发表于 2011-11-24 16:17:47 | 显示全部楼层
回复 8# fanfande


    不一定,只要放在 path 变量所存储的任意一个路劲中即可,比如 windows 文件夹或者 system32 文件夹。
   当然也可以放在命令对应的当前路径(如果执行该命令前没有进行切换路径操作的话,则一般为脚本所在路径)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 11:59 , Processed in 0.022134 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表