标题: [文本处理] 【已解决】BAT如何提取文本指定内容?谢谢大家了! [打印本页]
作者: 1270697389 时间: 2013-10-19 13:54 标题: 【已解决】BAT如何提取文本指定内容?谢谢大家了!
本帖最后由 1270697389 于 2013-10-20 08:18 编辑
</div>
div class="ad1"><script src="/js/ml_bd02.js"></script></div>
<div class="ad1"><script src="/js/ml_bd03.js"></script></div>
<br />
<span class="v">情不问因果...</span><span><a href="/txt/152477/13341899/index.html" target="_blank">第2节:第一章 行乐须及春(2)</a></span><span><a href="/txt/152477/13341900/index.html" target="_blank">第3节:第一章 行乐须及春(3)</a></span><span><a href="/txt/152477/13341901/index.html" title="第4节:第一章 行乐须及春(4),情不问因果">第4节:第一章 行乐须及春(4)</a></span><span><a href="/txt/152477/13341902/index.html" target="_blank">第5节:第一章 行乐须及春(5)</a></span><span><a href="/txt/152477/13341903/index.html" target="_blank">第6节:第一章 行乐须及春(6)</a></span><span><a href="/txt/152477/13341904/index.html" title="第7节:第二章 月黑风高夜(1),情不问因果">第7节:第二章 月黑风高夜(1)</a></span><span><a href="/txt/152477/13341905/index.html" target="_blank">第8节:第二章 月黑风高夜(2)</a></span><span><a href="/txt/152477/13341906/index.html" target="_blank">第9节:第二章 月黑风高夜(3)</a></span><span><a href="/txt/152477/13341907/index.html" title="第10节:第二章 月黑风高夜(4),情不问因果">第10节:第二章 月黑风高夜(4)</a></span><span><a href="/txt/152477/13341908/index.html" target="_blank">第11节:第二章 月黑风高夜(5)</a></span><span><a href="/txt/152477/13341909/index.html" target="_blank">第12节:第二章 月黑风高夜(6)</a></span><span><a href="/txt/152477/13341910/index.html" title="第13节:第三章 (1),情不问因果">第13节:第三章 (1)</a></span><span><a href="/txt/152477/13341911/index.html" target="_blank">第14节:第三章 (2)</a></span><span><a href="/txt/152477/13341912/index.html" target="_blank">第15节:第三章 (3)
我需要提取href="/txt/***********/.html" target="_blank">
中间红色的这一段,复制到a.txt里
/txt/152477/13341899/index.html
/txt/152477/13341900/index.html
/txt/152477/13341901/index.html
/txt/152477/13341912/index.html
就是这样,谢谢!
作者: apang 时间: 2013-10-19 17:59
来个纯批,不知道能不能用- @echo off
- for /f "delims=" %%a in ('find /i "href="^<a.txt') do (
- set "str=%%a"
- setlocal enabledelayedexpansion
- for %%b in ("!str:href=" "!") do (
- endlocal
- for /f tokens^=1-2delims^=^=^" %%c in ("%%~b") do (
- if /i "%%d"==" target" echo,%%c
- )
- )
- )
- pause
复制代码
作者: apang 时间: 2013-10-19 18:03
本帖最后由 apang 于 2013-10-19 18:04 编辑
vbs- Set fso = CreateObject("Scripting.FileSystemObject")
- text = fso.OpenTextFile("a.txt").ReadAll
- Set re = New RegExp
- re.Pattern = "href=""(/txt/[^=]*\.html)"" target="
- re.Global = True
- re.IgnoreCase = True
- For Each a In re.Execute(text)
- str = str & a.SubMatches(0) & vbCrLf
- Next
- fso.opentextfile("b.txt",2,true).Write str
复制代码
作者: 1270697389 时间: 2013-10-19 21:17
来个纯批,不知道能不能用
apang 发表于 2013-10-19 17:59
这个代码只能提取前30个,后面的提取不了,能改进一下吗?谢谢您!
作者: 1270697389 时间: 2013-10-19 21:19
vbs
apang 发表于 2013-10-19 18:03
谢谢您,可以执行,要是有纯批处理的就好了。
作者: apang 时间: 2013-10-19 21:46
回复 4# 1270697389
如果文本中存在超长行,纯批没有办法解决
作者: 1270697389 时间: 2013-10-20 08:15
回复 1270697389
如果文本中存在超长行,纯批没有办法解决
apang 发表于 2013-10-19 21:46
非常感谢!
作者: 1270697389 时间: 2013-10-20 08:17
谢谢apang的帮助,谢谢!完美实现
作者: 1270697389 时间: 2013-10-21 19:09
vbs
apang 发表于 2013-10-19 18:03
你好!这个批处理很好用,可是我不会变通,比如我要复制文本中的:
a.txt
这个批处理很好用,可是我不会变通,比如我要复制文本中的
Set fso = CreateObject("Scripting.FileSystemObject")
text = fso.OpenTextFile("a.txt").ReadAll
Set re = New RegExp
rem re.Pattern = "href=""(/txt/[^=]*\.html)"" target="
re.Pattern = "这""(个[^=]*\文)"" 本"
re.Global = True
re.IgnoreCase = True
For Each a In re.Execute(text)
str = str & a.SubMatches(0) & vbCrLf
Next
fso.opentextfile("b.txt",2,true).Write str
可是我改了这一段运行不了。谢谢
作者: apang 时间: 2013-10-21 21:26
回复 9# 1270697389
比如,提取 "这个" 与 "文本" 之间的内容,括弧包围的就代表要提取的内容:
这个批处理很好用,可是这个我不会变通,比如我要复制文本中的文本
re.Pattern = ".*这个(.*?)文本"
这个批处理很好用,可是这个我不会变通,比如我要复制文本中的文本
re.Pattern = "这个(.*)文本"
作者: 1270697389 时间: 2013-10-22 07:43
回复 1270697389
比如,提取 "这个" 与 "文本" 之间的内容,括弧包围的就代表要提取的内容:
这 ...
apang 发表于 2013-10-21 21:26
太好了,谢谢!
作者: 1270697389 时间: 2013-10-22 10:58
回复 1270697389
比如,提取 "这个" 与 "文本" 之间的内容,括弧包围的就代表要提取的内容:
这 ...
apang 发表于 2013-10-21 21:26
<li><a href="http://www.chuxingyi.net/txt/1_1.html">玄幻</a></li>
向这种怎么写:
re.Pattern = "href=""(.*)""^>"
作者: work345 时间: 2013-10-22 11:44
:)学习下 :):)
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |