求一个正则表达式取div中间的内容。
<divclass='aaa'>你好我是内容aaasd</div>用正则取中间的内容,后面再出现就不取了<divclass="zhxmlist">(\s*.*?\s*)*...
<div class='aaa'>你好我是内容aaasd</div> 用正则 取中间的内容,后面再出现就不取了
<div class="zhxmlist">(\s*.*?\s*)*</div> 这个是正解! 展开
<div class="zhxmlist">(\s*.*?\s*)*</div> 这个是正解! 展开
4个回答
展开全部
为什么一定要用正则取呢?
1.不用正则:用innerText就可以取了。
2.用正则:一楼说得对。
1.不用正则:用innerText就可以取了。
2.用正则:一楼说得对。
追问
兄弟,是抓数据 不是自己写代码。
追答
var regExp=/(.*)/;
var input="你好我是内容aaasd"
if(input.match(regExp)!="")
{
alert(input.replace(//,'').replace(//,''));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
正则用于取嵌套的DIV目前只有.NET和PHP支持的比较好,分别要用平衡组和嵌套递归,总的来说还是比较麻烦的。其他语言不推荐用纯正则处理,最好用字符串函数结合正则。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(?<=<div class='aaa'>).*?(?=</div>)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<div class='aaa'>(.*)</div>
追问
额。这样写后面再出现,不又取到了。
你好我是内容aaasd
你好我是内容aaasd
我只想取第一个
追答
你好我是内容aaasd 你好我是内容aaasd ";
$preg = "/(.*?)/";
preg_match_all($preg,$str,$arr);
print_r($arr);
?>
这样获取到的结果是一个数组,你只要第一个的话,你就只输出数组的第一个就OK了,这个不用再用正则去纠结了啊。如果你是PHP的话,直接把preg_match_all改成preg_match就只取第一个了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询