78950105 发表于 2014-1-5 16:32:49

(已解决)怎么对已经打开的网页进行正则查找?请高手看看哪里错了?

本帖最后由 78950105 于 2014-1-5 18:47 编辑

代码如下,网页已经用IE打开,希望在这个网页上使用正则查询信息,为什么出错呢?请高手指点.谢谢!#include <ie.au3>
;$_url = "http://www.baidu.com/"
$oIE = _IEAttach("百度一下"); 网页标题

;$sHTML = _IEDocReadHTML($oIE);方法一
$sHTML=_IEBodyReadHTML($oIE);方法二

MsgBox(0, "$sHTML", $sHTML);测试使用

Local $test
$test = StringRegExp($sHTML, '(?<=让上网更安全,)\w+', 3) ;对网页正则,希望查找的是"立即下载百度杀毒".

MsgBox(0, "$test", $test)
MsgBox(0,"$test",$test);查找不到"立即下载百度杀毒"

afan 发表于 2014-1-5 17:03:43

找那几个汉字有啥用?
\w 换成 [^<](?<=让上网更安全,)[^<]+

lpxx 发表于 2014-1-5 17:07:10

你这样肯定匹配不到了,估计(?<=让上网更安全,)(.*?)<

78950105 发表于 2014-1-5 18:28:00

回复 2# afan
多谢A版指教,我是拿这个练习正则来的.

78950105 发表于 2014-1-5 18:32:37

回复 3# lpxx
多谢lpxx,的确是我写的正则匹配有问题,换成你提供的,正常了.
可是我写的那个匹配规则,在RegEx Tester V3.2.0.0里也能通过,是不是兼容性的问题?
不管怎样,还是学艺不精,还要向楼上二位多学习,提高能力.
页: [1]
查看完整版本: (已解决)怎么对已经打开的网页进行正则查找?请高手看看哪里错了?