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

[文本处理] [已解决]批处理怎样将指定字符串值写入文本文件?

[复制链接]
发表于 2015-9-25 10:13:31 | 显示全部楼层 |阅读模式
本帖最后由 447219071 于 2015-10-8 21:53 编辑

求批处理:将A.htm文件内CPULINK字符串后后的值导出另生成A.TXT
A.htm内容如下:
  1. <div>cpulink=http://www.1.com</div>
  2. <p>cpulink=http://www.2.com<br />
  3. <div>cpulink=http://www.3.com</div>
  4. <p>cpulink=http://www.4.com<br />
复制代码
尽量不要第三方工具
只是提供个思路:查找cpulink后的值,截至字符“<”
生成A.TXT文件内容如下,每个值为一断行(注意:没有空行,三楼的结果页生成的文本文件最后有一个空行):
  1. http://www.1.com
  2. http://www.2.com
  3. http://www.3.com
  4. http://www.4.com
复制代码
本人为批处理菜鸟,请各位大大帮忙
发表于 2015-9-25 13:13:38 | 显示全部楼层
  1. ::先下载第三方http://batch-cn.qiniudn.com/tool/2.5.1/grep.exe
  2. grep -oP "(?<=cpulink=)[^<]+" "A.htm">"A.txt"
复制代码
发表于 2015-9-25 15:36:09 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. (for /f "delims=" %%i in (A.htm) do (
  3.     set "str=%%i"
  4.     set "str=!str:*cpulink=!"
  5.     if "!str!" neq "%%i" if "!str:~,1!" == "=" (
  6.        for /f "delims==<" %%i in ("!str!") do echo %%i
  7.     )
  8. ))>A.txt
  9. pause
复制代码
JS 混编

  1. @if(0)==(0) echo off & cscript -NoLogo -E:JScript %0 <a.htm >a.txt & pause & exit  @end
  2. var reg = /cpulink=([^<]+)/ig;
  3. while (!WScript.StdIn.AtEndOfStream){
  4.     var str = WScript.StdIn.ReadLine();
  5.     var s = str.match(/cpulink=([^<]+)/);
  6.     if (s) {  WSH.Echo(s[1]) };
  7. }
复制代码

评分

参与人数 1技术 +1 收起 理由
447219071 + 1 这就是我想要的

查看全部评分

 楼主| 发表于 2015-9-26 00:58:47 | 显示全部楼层
回复 3# terse
高手,请问不要最后一行的空行,行吗?
发表于 2015-9-26 02:52:30 | 显示全部楼层
@echo off&color 0e
(for /f "tokens=1,* delims==" %%i in (A.htm.txt) do (
for /f "tokens=1,* delims=^<" %%k in ("%%j") do (
  echo=%%k|findstr/i "^http">nul2>nul&&(
   echo=%%k
  )
))
)>new_A.htm
pause
发表于 2015-10-2 19:17:10 | 显示全部楼层
回复 1# 447219071


    来一个简单的:
for /f "tokens=1-5 delims=<=> " %%a in (a.htm) do echo.%%c>>a.txt
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 15:58 , Processed in 0.020067 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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