[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 ArdentMan 于 2011-7-10 12:41 编辑
  1. @Echo Off&SetLocal EnableDelayedExpansion
  2. (For /F "tokens=4-8 delims==<>: " %%a In ('Findstr /c:"<a href" *.htm') Do (
  3.   If /i "%%~a%%d%%~e" EQU "httptarget_blank" Set "Str=%%a:%%b=%%c"&Echo !Str:~1,-1!
  4. ))>1.txt
  5. Start 1.txt
复制代码
一路飘过的鸟~~~

TOP

本帖最后由 ArdentMan 于 2011-7-10 12:31 编辑

vbs正则提取
  1. Dim FSO, Path, vbStr, File, REGEX, OutStr
  2. Path = CreateObject("Wscript.Shell").CurrentDirectory
  3. Set FSO = CreateObject("Scripting.FileSystemObject")
  4. For Each File In FSO.GetFolder(Path).Files
  5.   If LCase(FSO.GetExtensionName(File)) = "htm" Then
  6.     vbStr = vbStr & FSO.OpenTextFile(File).ReadAll() & vbCrLf
  7.   End If
  8. Next
  9. Set REGEX = New RegExp
  10. REGEX.Global = True
  11. REGEX.IgnoreCase = True
  12. REGEX.Pattern = ".*?<a href=\x22([^<>\s\x22]+)?\x22 target=\x22_blank\x22>.*?\r\n"
  13. OutStr = REGEX.Replace(vbStr, "$1" & vbCrLf)
  14. FSO.OpenTextFile("1.txt", 2, True).Write OutStr
  15. Set FSO = Nothing
  16. Set REGEX = Nothing
  17. MsgBox "提取完成!", , "ArdentMan友情提醒"
复制代码
一路飘过的鸟~~~

TOP

8# wrrbb
本想简化下正则,谁知道出错,已修改回来,我的bat版试了没有?
一路飘过的鸟~~~

TOP

本帖最后由 ArdentMan 于 2011-7-10 12:45 编辑

8# wrrbb
应该是因为你的htm文件名中有空格的原因

二楼代码已修改,也是为了简化代码是少写一个~字符
一路飘过的鸟~~~

TOP

请楼主在顶楼给出htm文本格式以调试代码啊
一路飘过的鸟~~~

TOP

返回列表