首頁 >後端開發 >php教程 >正規表示式 - php怎麼用正規取得a標籤的內容?

正規表示式 - php怎麼用正規取得a標籤的內容?

WBOY
WBOY原創
2016-12-05 13:44:111845瀏覽

<code><!-- 1 -->
<a class="myclass" target="_blank" href="http://www.taobao.com/">我是内容1</a>
<!-- 2 -->
<a target="_blank" class="myclass" href="http://www.baidu.com/">我是内容2</a>
<!-- 3 -->
<a class="noclass" target="_blank" href="http://www.foobar.com/">不包含我</a>
</code>

像上面這句標籤,我想要取得a標籤的1和2的內容(我是內容1、我是內容2),不想要3(不包含我),他們的唯一區別是class標籤不同class位置也可能會不同! ! ! **

請問 怎麼用正規來獲取?

回覆內容:

<code><!-- 1 -->
<a class="myclass" target="_blank" href="http://www.taobao.com/">我是内容1</a>
<!-- 2 -->
<a target="_blank" class="myclass" href="http://www.baidu.com/">我是内容2</a>
<!-- 3 -->
<a class="noclass" target="_blank" href="http://www.foobar.com/">不包含我</a>
</code>

像上面這句標籤,我想要取得a標籤的1和2的內容(我是內容1、我是內容2),不想要3(不包含我),他們的唯一區別是class標籤不同class位置也可能會不同! ! ! **

請問 怎麼用正規來獲取?

謝邀。

<code class="php">$str = '<a class="myclass" target="_blank" href="http://www.taobao.com/">我是内容1</a>
<a target="_blank" class="myclass" href="http://www.baidu.com/">我是内容2</a>
<a class="noclass" target="_blank" href="http://www.miyahuo.com/">不包含我</a>';

preg_match_all('#<a .*class="myclass".*>(.*)</a>#', $str,$m);
print_r($m);
/*
Array
(
    [0] => Array
        (
            [0] => <a class="myclass" target="_blank" href="http://www.taobao.com/">我是内容1 <a target="_blank" class="myclass" href="http://www.baidu.com/">我是内容2 Array
        (
            [0] => 我是内容1
            [1] => 我是内容2
        )

)
*/</code>

謝邀,樓上正解

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn