找回密码
 加入
搜索
查看: 2454|回复: 2

[AU3基础] 正则 表达

[复制链接]
发表于 2014-5-14 19:38:05 | 显示全部楼层 |阅读模式
本帖最后由 区安贞 于 2014-5-14 19:53 编辑

我au3抓取网页信息 保存txt

<li data-cmd="0" data-ptime="2014-05-14 19:00:00" data-cname="国内" data-pname="新闻" _hot="live.souhu.newellist" data-playid="222445654" data-index="1" data-key="34">
<img onerror="picerr(this,3)" data-src="http://www.baidu。com/newsapp_ls/0/11987379_3030/0"/>
<span>安徽新闻</span>

我填写data-playid="(.*?)"能抓到
我想抓data-cname=内容 和 data-playid=后的内容 保存为txt

想抓取 新闻222445654 保存为文本

表达式怎么写啊
谢谢新手刚入门
发表于 2014-5-14 21:40:59 | 显示全部楼层
本帖最后由 lpxx 于 2014-5-14 21:44 编辑
#include <Array.au3>
Local $Str = _
                '<li data-cmd="0" data-ptime="2014-05-14 19:00:00" data-cname="国内" data-pname="新闻" _hot="live.souhu.newellist" data-playid="222445654" data-index="1" data-key="34">' & @CRLF & _
                '<img onerror="picerr(this,3)" data-src="http://www.baidu。com/newsapp_ls/0/11987379_3030/0"/>' & @CRLF & _
                '<span>安徽新闻</span>' & @CRLF
MsgBox(0, '原字符串', $Str)
Local $Test = StringRegExp($str, 'data-(?:cname|playid)="([^"]+)', 3)
If Not @Error Then MsgBox(0, '匹配数量: ' & UBound($Test), '其中[0]元素为: ' & $Test[0])
_ArrayDisplay($Test, UBound($Test))
就这点能耐,坐等afan大神答案。
 楼主| 发表于 2014-5-15 12:44:04 | 显示全部楼层
Local $Test = StringRegExp($str, 'data-(?:cname|playid)="([^"]+)', 3)
谢谢大哥  原来这样写 data-(?:cname|playid)="([^"]+)

如果文本保存为一行 该怎么写啊
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-7-8 09:31 , Processed in 0.082279 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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