找回密码
 加入
搜索
查看: 3054|回复: 9

[IE类操作] 关于正则的一些问题[已解决]

[复制链接]
发表于 2011-9-11 16:37:41 | 显示全部楼层 |阅读模式
本帖最后由 lessf 于 2011-9-14 16:53 编辑

第一问:
      <tr>
        <td width="80" align="center" bgcolor="#F3F3F3"><strong>影片名称:</strong></td>
        <td width="434">abcd</td>
      </tr>

关于如何直接获取abcd
$MovieNameReg = StringRegExp($Page,'(?<=影片名称:.{1,15}\n.{1,32}\d{2,5}">).{1,50}(?=</td>)',2)
这个正则,在RegexTester.exe里测试获取成功,在AU3里,表达式错误,啥情况?




第二问:

        <td align="center" valign="top" bgcolor="#F3F3F3"><strong>影片简介:</strong></td>
        <td>11111
22222
33333
44444
</td>

如何获取如上的1234呢?带有换行符,很纠结的说
StringRegExp($Page,'影片简介:.{1,15}\n.{1,20}<td>.{0,500}(?=<\/td>)',2)
这个能获取无换行符的,对上换行符就完蛋了
 楼主| 发表于 2011-9-11 16:45:41 | 显示全部楼层
在线等高人............
 楼主| 发表于 2011-9-11 16:46:53 | 显示全部楼层

发个图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2011-9-11 16:58:11 | 显示全部楼层
第一个问题:
$str='     <tr>'&@crlf& _
 '       <td width="80" align="center" bgcolor="#F3F3F3"><strong>影片名称:</strong></td>'&@crlf& _
 '       <td width="434">abcd</td>'&@crlf& _
 '     </tr>'
 
 $result=StringRegExp($str,"(?s)(影片名称:[\s\S]*\>)([^<>\s]+)",3)
MsgBox(0,"",$result[1])
发表于 2011-9-11 17:05:02 | 显示全部楼层
第二个问题:
$str='<td align="center" valign="top" bgcolor="#F3F3F3"><strong>影片简介:</strong></td>'&@crlf& _
 '        <td>11111'&@crlf& _
 '22222'&@crlf& _
'33333'&@crlf& _
'44444'&@crlf& _
 '</td>'
 
 $result=StringRegExp($str,"(?s)影片简介:[\s\S]*\>([^<>]+)(?=\<)",3)
MsgBox(0,"",$result[0])

评分

参与人数 1金钱 +10 收起 理由
lessf + 10 非常感谢!

查看全部评分

 楼主| 发表于 2011-9-11 17:16:11 | 显示全部楼层
非常感谢!!!!
 楼主| 发表于 2011-9-11 17:35:11 | 显示全部楼层
看来是表达方法不对,测试未通过
我把TXT内容贴上来
      <tr>
        <td align="center" valign="top" bgcolor="#F3F3F3"><strong>影片简介:</strong></td>
        <td>都市修特尔比鲁特是由各式各样的人种、民族、和被称作「NEXT」的特殊能力者共存的、并且存在着使用「NEXT」能力来维护城市和平的「超级英雄」的城市。
各路英雄背负着赞助商的商标、为了提高企业的形象和获得英雄点数、不断解决着各类事件、拯救人们的性命。
他们活跃的身影由人气节目「hero tv」播放、各自以「king of hero」为目标、争夺着每年的英雄排名。
这些英雄中的一人、 wild tiger(镝虎·T·虎彻)在英雄中是已经开始走下坡路的老牌英雄。是一位虽说不得不执行上级的命令、但是为了保护市民的安全不惜破坏公物、我行我素的类型。这样的他不知什么时候被冠上了「正义的破坏者」这样一个尴尬的称号…这样的虎彻、突然和新人巴纳比·布鲁克斯Jr 建起了组合。
工作和生活都陷入危机的老手、wild tiger和能力优秀但嫉妒难缠的新人巴纳比·布鲁克斯Jr、两人互不相让的同时、仍向邪恶发起挑战------痛快无比的buddy hero action!(基友英雄动作片!)</td>
      </tr>
    </table></td>
  </tr>
上面的保存成TXT
然后用代码
$str=FileRead(@ScriptDir & '\aaa.txt')
$result=StringRegExp($str,"(?s)影片简介:[\s\S]*>([^<>]+)(?=<)",3)
MsgBox(0,"",@error)
MsgBox(0,"",$result[0])
获取成功,但是是空白符
发表于 2011-9-11 18:31:05 | 显示全部楼层
本帖最后由 3mile 于 2011-9-11 18:33 编辑

在群里回答过你了啊,怎么没有注意到吗?
(?ms)(?<=影片).*?<td.*?>(.*?)(?=\</td\>)

评分

参与人数 1金钱 +10 收起 理由
lessf + 10 感谢3英里

查看全部评分

 楼主| 发表于 2011-9-11 18:36:48 | 显示全部楼层
感谢3英里,刚刚群里的消息没看到!!!
发表于 2011-9-11 19:04:59 | 显示全部楼层
本帖最后由 kevinch 于 2011-9-11 19:10 编辑
$result=StringRegExp($str,"(?s)影片简介:(<[^<>]+?>\s*)*([^<>]+?)(?=<)",3)
MsgBox(0,"",$result[1])
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-6-3 02:49 , Processed in 0.086643 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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