用php实现如下功能,给定一个网址,如:www.aaa.com。他会搜索本网站内所有的网站地址,并且他会在查找中的网址。在自动搜索网址的

解决方案 »

  1.   

    正则表达式抓所有链接即可
    <?php
    /*
    example
    $str 要抓取的字符串
    $add_patten,附加的抓取规则
    $direct "left or right" //附加规则的加在什么地方
    $matches = GrabLinks($str,".*?\[(\d{2}-\d{2})\]");
    */
    function GrabLinks($str,$add_patten_left=".*?",$add_patten_right="")
    {
    $matches = array();
    $link_patten = "<a.*?href\s*=\s*\\\"?\'?([^\\\",\',\s,>]+)\\\"?\'?\s*.*?>(.+?)</a>";


    $link_patten = $add_patten_left.$link_patten.$add_patten_right;

    if(preg_match_all("|$link_patten|is",$str,$matches) !== false)
    return $matches;
    else
    return false;
    }
    ?>