$HTMLSTR是一段HTML代码,中有N个超链接,现在需要把这些链接都找出来进行处理,对正则表达式了解不深,哪位高手能告诉我应怎么写吗?

解决方案 »

  1.   

    $s = <<<HEML
    <font size=-1><input type=text name=q size=31 maxlength=2048 value="会" title="Google 搜索"> <input type=submit name=btnG val
    ue="Google 搜索"><input type=hidden name=complete value=1><input type=hidden name=hl value="zh-CN"><input type=hidden name=ne
    wwindow value=1></font></td></tr></form></table><br><font size=-1><a href=/swr?q=%E4%BC%9A&complete=1&hl=zh-CN&newwindow=1&sw
    rnum=725000000>在结果中搜索</a>&nbsp;|&nbsp;<a href=/language_tools?q=%E4%BC%9A&complete=1&hl=zh-CN&newwindow=1>语言工具</a>&
    nbsp;|&nbsp;<a href="/intl/zh-CN/help.html">搜索帮助</a>&nbsp;|&nbsp;<a href="/quality_form?q=%E4%BC%9A&amp;complete=1&amp;hl
    =zh-CN&amp;newwindow=1" target=_blank>意见反馈</a></font><br><br></td></tr></table></center><center><p><hr class=z><table bor
    der=0 cellpadding=2 cellspacing=0 width=100%><tr><td align=center><font size=-1><a href="/">Google 首页</a> - <a href="/intl/
    zh-CN/ads/">广告计划</a> - <a href="/intl/zh-CN/about.html">Google 大全</a></font></td></tr></table><br><font size=-1 class=p
    >&copy;2007 Google</font></center><script>window.google.ac.InstallAC(document.gs,document.gs.q,document.gs.btnG,"search","zh-
    CN");</script></body></html>
    HEML;if (preg_match_all("/<a.*?href=([\'\"]?)([^>\s]*)\\1[^>]*>/",$s,$m)) {
      print_r($m[2]);}