$date = '<a href="adf.php">名称</a>';
ereg ('<a href=".*">(.*)</a>', $date, $regs);
echo $regs[1];

解决方案 »

  1.   

    学习
    同事请教属性不定时的写法,比如:<a href="**" target="**" style="**">**</a>
      

  2.   

    $str = '<a href="#">www.yoursite.com</a>';
    $p = "/<a\s?href=\"(.*)\">(.*)<\/a>/";
    $container = array();
    preg_match($p, $str, $container);
    print_r($container);
      

  3.   

    <?php
    preg_match_all ("|<[^>]+>(.*)</[^>]+>|U",
       "<b>example: </b><div align=left>this is a test</div>",
       $out, PREG_SET_ORDER);
    print $out[0][0].", ".$out[0][1]."\n";
    print $out[1][0].", ".$out[1][1]."\n";
    ?>
    用这个可以去标签 取里面的内容
      

  4.   

    按willko的方法,只能提取一个啊
      

  5.   

    lantersen的写法,在2个以上的A标签出现时,只有最后一个能提取正确啊
      

  6.   

    $container = array();
    $str = '<a href="#1">www.yoursite.com</a><a href="#2">www.yoursite2.com</a><a href="#3">www.yoursite3.com</a>';
    $p = "/<a\s?href=\"(.*)\">(.*)<\/a>/U";
    $container = array();
    preg_match_all($p, $str, $container);
    print_r($container);
      

  7.   

    得到的是一个二维数组,你可做后续处理:
    (
        [0] => Array
            (
                [0] => <a href="#1">www.yoursite.com</a>
                [1] => <a href="#2">www.yoursite2.com</a>
                [2] => <a href="#3">www.yoursite3.com</a>
            )    [1] => Array
            (
                [0] => #1
                [1] => #2
                [2] => #3
            )    [2] => Array
            (
                [0] => www.yoursite.com
                [1] => www.yoursite2.com
                [2] => www.yoursite3.com
            ))
      

  8.   

    <?php
    $data = '<a href="aaa">哈哈</a><b>example: </b><div align=left>this <a href="xx">哦哦</a>is a test</div><a href="xx">啊啊</a>';
    preg_match_all ('|<a href="[^>]+">(.*)</a>|U', $data, $out, PREG_SET_ORDER);
    foreach ($out as $row)
    {
    echo htmlspecialchars($row[0]);
    echo ' => '.$row[1].'<br />';
    }
    ?>
      

  9.   

    兄弟们,还是没对,如果把(<a href="aaa">哈哈</a>)写成(<a href="aaa" target=_blank>哈哈</a>),就提不出来了
      

  10.   

    <?php
    $data = '<a alt="xx" href="aaa">哈哈</a><b>example: </b><div align=left>this <a href="xx">哦哦</a>is a test</div><a href="xx" target="_blank">啊啊</a>';
    preg_match_all ('|<a[^>]*href=[^>]+>(.*)</a>|U', $data, $out, PREG_SET_ORDER);
    foreach ($out as $row)
    {
    echo htmlspecialchars($row[0]);
    echo ' => '.$row[1].'<br />';
    }
    ?>
      

  11.   

    好了,问题解决了,感谢各位的帮助.
    同时,我把正则式改了一下
    <?php
    $data = '<a href="aaa">哈哈</a><b>example: </b><div align=left>this <a href="xx">哦哦</a>is a test</div><a href="xx">啊啊</a>';
    preg_match_all ('|<a[^>]+>(.*)</a>|U', $data, $out, PREG_SET_ORDER);
    foreach ($out as $row)
    {
    echo htmlspecialchars($row[0]);
    echo ' => '.$row[1].'<br />';
    }
    ?>
    这样的话,即使A标签内还有其他属性,也照样可以提取