AFAN的回答成功解决,只是只学会了方法,未领悟其含义。
因为平时在提取自己需要的内容时经常遇到这种情况,之前的办法就是匹配两次 这里以前几天有人提的问为例,他需要的是提取网易博客的正文,假如再需要提取正文中的图片地址,不过从效率上来看,匹配两次貌似更快点,不知道有没有高效的匹配一次的方法。
#include <Inet.au3>
#include<array.au3>
$source = _INetGetSource("http://zhangshuyue.blog.163.com/blog/static/179045442013220115848363/")
$time1 = TimerInit()
$jpg = StringRegExp($source, '(?s)(?!nbw-blog-start).*?src="(http://.*?\.jpg).*?(?=.*nbw-blog-end)', 3)
_ArrayDisplay($jpg, TimerDiff($time1))
$time2 = TimerInit()
$tmp = StringRegExp($source, '(?s)<div class="nbw-blog-start"></div>.+?<div class="nbw-blog-end"></div>', 3)
$jpg = StringRegExp($tmp[0], 'src="(http://.*?\.jpg)', 3)
_ArrayDisplay($jpg, TimerDiff($time2))
|