正则如何去匹配HTML嵌套

正则如下:

/<(dd|dt)[^>]*>(.*)<\/(dd|dt)[^>]*>/U

但是无法匹配最后一组,HTML符号还有HTML的数据,请问如何解决嵌套的问题,注:我不是要解析DOM,我是要取<dd></dd>之间所有数据

this-is-personal">
            <div class="box-hd">个人信息</div>
            <div class="box-bd">
                <dl class="clearfix">
                    <dt>会员名:</dt>
                    <dd>ookkds</dd>
                    <dt>性别:</dt>
                    <dd>男</dd>
                    <dt>站内信:</dt>
                    <dd><a href="add_private_msg.htm?recipient_nickname=dsk">发送信件</a></dd>
                    <dt>地址:</dt>
                    <dd>广东 &nbsp; 梅州</dd>
                    <dt class="title">头像:</dt>
                    <dd>
        <a href="index.htm?sceneCode=PC_MY_ACCOUNT&problemId=77" target="_blank">
        <img border="0" align="absmiddle" src="zfb_person_small.gif" title="" />
    </a>
    

        </dd>
                </dl>
                                                                <ul class="
阅读 2k
2 个回答
/<(dd|dt)[^>]*>([\s\S]*?)<\/\1>/U

一条正则解决不了多标签的问题。推荐用 DOM 解析器。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题