2012-08-16 270 views
1

的字,如果我有一個HTML一行:獲取<a></a>標籤

<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a> 

我想「這個詞」擺脫它用PHP。 我嘗試過str_replace(),但是我沒有走得太遠。因爲鏈接改變了。

那麼我該如何做到這一點?

+2

的preg_match或http://php.net/manual/en/book.dom.php – ceejayoz 2012-08-16 21:43:45

回答

2

一個簡單的解決方案是使用內置的功能strip_tags一個複雜的解決辦法是使用正則表達式

地帶標籤實現

$str = '<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>'; 
$strip = strip_tags($str); 

echo $strip; // this word 

正則表達式匹配

$str = '<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>'; 
$strip = preg_replace("/<\\/?a(\\s+.*?>|>)/", "", $str); // removes only a tags 

echo $strip; // this word 
1

我會使用一個庫如simplehtmldom

的代碼可能看起來像:

$html = str_get_html('<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>'); 
$text = $html->find('a', 0)->innerText; 
1

我會用DOMDocument

$doc = new DOMDocument(); 
$doc->loadHTML('<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>'); 
echo $doc->getElementsByTagName('a')->item(0)->nodeValue;