正则问题

FreeAbel 2008-01-12 02:21:45
(.*) <div> (.*) <\/div> (.*)
我想用这个正则表示下面的1111 可是是错的 ,正确的应该怎么写啊
0000 <div> 1111 </div> 2222 <div> 3333 </div> 4444
...全文
122 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Phenlit 2008-01-18
  • 打赏
  • 举报
回复
(.*) <div> (.*) <\/div> (.*)
要匹配下面的111,不是行的
0000 <div> 1111 </div> 2222 <div> 3333 </div> 4444


如果确定是111的话,就因该是
<div>111<\/div>

要不,<div>333</div>怎么办?还有别的呢?

其实单纯的匹配111的话就不用写正则了

如果匹配所以标签内的111,那么应该
<(.*)>111<\/\1>
如果取所有<div></div>内的数据,应该
<div>(.*?)</div>
gzdiablo 2008-01-18
  • 打赏
  • 举报
回复
最好是
var re = /<div[^>]*>([\s\S]*?)<\/div>/ig;
while(re.exec(str))
alert(RegExp.$1);

zelloss 2008-01-18
  • 打赏
  • 举报
回复
学习~
MikeCheers 2008-01-18
  • 打赏
  • 举报
回复
3楼 4楼 都可以的
TNT_1st_excellence 2008-01-18
  • 打赏
  • 举报
回复
up
什么都不能 2008-01-12
  • 打赏
  • 举报
回复
<script language="javascript" type="text/javascript">
<!--
var a="0000<div>1111</div>2222<div>3333</div>4444";
var b=/<div>(.*?)<\/div>/;
alert(b.exec(a)[1]);
-->
</script>
mingxuan3000 2008-01-12
  • 打赏
  • 举报
回复

<div>.*?<\/div>

直接这个就可
nicholsky 2008-01-12
  • 打赏
  • 举报
回复
只想匹配1111应该

<script>
str="0000 <div> 1111 </div> 2222 <div> 3333 </div> 4444 "
reg=/<div>(.*?)<\/div>/
alert( str.match(reg)[1] )
</script>
he_8134 2008-01-12
  • 打赏
  • 举报
回复
你的正则第一个(.*)就匹配了0000 <div> 1111 </div> 2222

试试这样

(.*?)<div>(.*?)<\/div>(.*)

87,993

社区成员

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

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