请教这个正则怎么写?

无·法 社区初级成员 T1 2009-10-15 08:53:31
lass="selected" onclick="return changePage('1')">1</a></li>                                        <li><a href="#" onclick="return changePage('2')">2</a></li>                                                <li><a href="#" onclick="return changePage('3')">3</a></li>                                                <li>...</li>                                <li><a href="#" onclick="return changePage('17')">17</a></li>                                        <li class="next-page"><a href="#" onclick="return changePage('2')">下一页</a></li>    

如何取上面的这个数字17?也就是最大页

我用的changePage\('(\d+)'\)(?!(.*?changePage)).*?next-page

为什么匹配不到结果啊,该怎么写?
...全文
80 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wcwtitxu 2009-10-16
  • 打赏
  • 举报
回复

Dim regex
Set regex = New RegExp
regex.Pattern = "\d+(?=\D+next\-page)"

MsgBox regex.Execute(htmlCode).Item(0).Value

Set regex = Nothing
wcwtitxu 2009-10-16
  • 打赏
  • 举报
回复
var regex = /\d+(?=\D+next\-page)/;
var page = htmlCode.match(regex)[0];
-过客- 2009-10-15
  • 打赏
  • 举报
回复
<textarea id="source" rows="10" cols="100"></textarea><br />
<input type="Submit" value="处理" onclick="opt();"><br />
<textarea id="result" rows="10" cols="100"></textarea><br />
<script type="text/javascript">
function opt()
{
var str = document.getElementById("source").value;
var reg = /\d+(?=\s*<\/a>\s*<\/li>\s*<li[^>]*>\s*<a[^>]*>\s*下一页\s*<\/a>\s*<\/li>)/;
document.getElementById("result").value = str.match(reg);
}
</script>
无·法 社区初级成员 T1 2009-10-15
  • 打赏
  • 举报
回复
匹配后然后用matchs(match.count-1).submatches(0)
natineprince 2009-10-15
  • 打赏
  • 举报
回复
成功了?为什么一定要用正则做呢?
无·法 社区初级成员 T1 2009-10-15
  • 打赏
  • 举报
回复
我还是用原来的方法了,就是匹配所有的页面,取子匹配的最后一个:
<a href="#" onclick\="return changePage\('(\d+?)'\)">[\d ]+?</a>
无·法 社区初级成员 T1 2009-10-15
  • 打赏
  • 举报
回复
规律应该很好找的吧,就是最后有下一页的前面的页数就是我要的,例如这里的就是15

对应的代码是:

<li class="curr-page"><a href="#" class="selected" onclick="return changePage('1')">1</a></li>
<li><a href="#" onclick="return changePage('2')">2</a></li>
<li><a href="#" onclick="return changePage('3')">3</a></li>
<li>...</li>
<li><a href="#" onclick="return changePage('15')">15</a></li>
<li class="next-page"><a href="#" onclick="return changePage('2')">下一页</a></li>
natineprince 2009-10-15
  • 打赏
  • 举报
回复
这个用正则匹配很麻烦啊...

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧