$old = '
<script>utmx_section("relatedOuterDivStyleCSS")</script>
<style>.relatedStyle {width: 300px; float: right; padding-left: 15px; margin-bottom:10px; margin-left:10px; padding-top:10px; border-top:1px solid #CCCCCC; border-bottom:1px solid #CCCCCC;}</style>
</noscript>
<script>utmx_section("relatedContentStyleCSS")</script>
<style>.relatedContent {padding-bottom: 15px; color:#336666}</style>
</noscript>
<script>utmx_section("relatedHeadingStyleCSS")</script>
<style>.relatedHeading{padding-bottom: 15px}</style>
</noscript>
<script>utmx_section("relatedTitleStyleCSS")</script>
<style>.relatedTitle{}</style>
</noscript>
<div class="relatedStyle">
<script>utmx_section("relatedHeading")</script>
<H3 class="relatedHeading">Also on Suite101&nbsp;</H3>
</noscript>内容<div style="margin-bottom:10px; padding-top:10px; border-top:1px solid #CCCCCC; border-bottom:1px solid #CCCCCC;"> 
<div id="adsense_placeholder_2"></div>
<script language="javascript">
document.getElementById('adsense_placeholder_2').innerHTML = document.getElementById('adsense_ad_2_hidden').innerHTML;
</script>
</div>';想取出里面的内容  应该怎么操作啊?请高手帮忙啊!

解决方案 »

  1.   


    //你的代码,字符串中间的'需要转义
    preg_match('/.*<\/noscript>(.*)<div style="margin-bottom:10px; padding-top:10px; border-top:1px solid #CCCCCC; border-bottom:1px solid #CCCCCC;">/is', $old, $content);
    echo $content[1];
      

  2.   

    preg_replace('/正则表达式/', 替换为字符串, 操作对象);
    参考这个例子:
    preg_replace("/(<\/?)(\w+)([^>]*>)/e", "'\\1'.strtoupper('\\2').'\\3'", $html_body);这个例子的关键是\\1就是指代前面第一个()中的内容,\\2指代前面第二个()中的内容,\\3类似。
      

  3.   

    preg_match('/.*<\/noscript>(.*)</div>/is', $old, $content);
    echo $content[1];
    试试看
    还有,
    你要把代码贴全了,要不下面的规则抓不到,无法正则出内容啊。
      

  4.   

    要输出来的话就用 preg_match_all();