关于正则的一些问题[已解决]
本帖最后由 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)
这个能获取无换行符的,对上换行符就完蛋了 在线等高人............
发个图 第一个问题:$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) 第二个问题:$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) 非常感谢!!!! 看来是表达方法不对,测试未通过
我把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)
获取成功,但是是空白符 本帖最后由 3mile 于 2011-9-11 18:33 编辑
在群里回答过你了啊,怎么没有注意到吗?
(?ms)(?<=影片).*?<td.*?>(.*?)(?=\</td\>) 感谢3英里,刚刚群里的消息没看到!!! 本帖最后由 kevinch 于 2011-9-11 19:10 编辑
$result=StringRegExp($str,"(?s)影片简介:(<[^<>]+?>\s*)*([^<>]+?)(?=<)",3)
MsgBox(0,"",$result)
页:
[1]