<tr><td>测试</td><tr>想替换为<LI>测试</LI>求PHP 正则替换,多谢

WBOY
发布: 2016-06-13 11:51:23
原创
1083 人浏览过
测试 想替换为
  • 测试
  • 求PHP 正则替换,谢谢。
    如题:
    测试 想替换为
  • 测试
  • 求PHP 正则替换,谢谢。

    因为我的HTML代码如下:
    <br /><table width="96%"border="0" align="center" cellpadding="4" cellspacing="0"><br /><br />        <tr   onMouseOver="this.style.backgroundColor='#EAEAEA'; return true;" onMouseOut="this.style.backgroundColor='transparent';"><br />          <td><a href="news_detail.php?infoId=141" class="link">新闻一</a></td><br />          <td align="right" class="newstime">2014-03-12</td><br />        </tr><br /><br />        <tr   onMouseOver="this.style.backgroundColor='#EAEAEA'; return true;" onMouseOut="this.style.backgroundColor='transparent';"><br />          <td><a href="news_detail.php?infoId=140" class="link">新闻二</a></td><br />          <td align="right" class="newstime">2014-02-20</td><br />        </tr><br /></table><br /><br /><br />
    登录后复制


    想替换成
    <br /><ul data-role="listview"  ><br />    <li><a href="#">新闻一 2014-03-12</a></li><br />    <li><a href="#">新闻二 2014-02-20</a></li><br /> <br /></ul><br />
    登录后复制



    ------解决方案--------------------
    先匹配。再拼装结果。
    $s=<<< TXT<br /><br /><table width="96%"border="0" align="center" cellpadding="4" cellspacing="0"><br /><br />        <tr   onMouseOver="this.style.backgroundColor='#EAEAEA'; return true;" onMouseOut="this.style.backgroundColor='transparent';"><br />          <td><a href="news_detail.php?infoId=141" class="link">新闻一</a></td><br />          <td align="right" class="newstime">2014-03-12</td><br />        </tr><br /><br />        <tr   onMouseOver="this.style.backgroundColor='#EAEAEA'; return true;" onMouseOut="this.style.backgroundColor='transparent';"><br />          <td><a href="news_detail.php?infoId=140" class="link">新闻二</a></td><br />          <td align="right" class="newstime">2014-02-20</td><br />        </tr><br /></table><br />TXT;<br /> preg_match_all('#<tr[^>]+>\s*<td><a[^>]+>(.+?)</a></td>\s*<td[^>]+>(.+?)<#s',$s,$m);<br /><br />$html="<ul data-role=\"listview\"  >\n";<br />foreach($m[1] as $k=>$v) $html .= "<li><a href=\"#\">$v {$m[2][$k]}</a></li>\n";<br />$html .= '</ul>';<br />echo $html;
    登录后复制

    ------解决方案--------------------
    用str_replace要好一点吧 
    相关标签:
    来源:php.cn
    本站声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!