正規表現は連続空白を取り除く+url+分割urlを取得する+画像を取得する

2731 ワード

関連:
PHP正規表現
PHP正規表現からハイパーリンクとタイトルを抽出する
 
<?php

$code = '    <a href="http://www.ibtimes.com" target="_blank"></a>
    
    The Global Business News Leader | Thursday, Nov 04, 2010
    
  
  
  
  
    
    <a href="#"></a>    
  ';

?>
 
 
 
 
1.連続空白を取り除く
 
<?php

//          
$code = preg_replace('/[
| |\s]{2,}/','',$code); // $code = preg_replace('/[
| |\s]{2,}/','\\1',$code); ?>
 
 
2.url+分割URLを取得する
   
<?php

$arr = preg_match_all("/<a[^>]*>[^<]*<\/a>/i", $code, $matches); //print_r($matches);
				
for($i = 0; $i < $arr; $i++)
{
	preg_match("/<a href=\"(.*?)\"[^>]*>(.*?)<\/a>/i", $matches[0][$i], $aMatch);
	
	echo '<pre>';
    print_r($aMatch);
	echo '</pre>';
						
}

?>
 
 
3.画像を取得する
 
<?php

function get_photos($xml_code)
{
	preg_match_all("/<img.+src=('|\")(.+)('|\").*(\/)*>/Uis",htmlspecialchars_decode($xml_code),$matches);
	print_r($matches[0]);
}


$output = <<<EOT
<h2>  ってほしい</h2><p> <br>  「      の  にショックを けた。チームの  が く ち んでいたが、そんなことは  に したことではなくなった。  をすることで  に  できたらと った」 <br> とキャプテンのリアネル・ピジナット  ( 33 &nbsp; ) は した。<br>&nbsp;<br>   の  は4 1の   。<br> 「 い  ができた。この  の びが『  ってほしい』というメッセージとなり  の   のもとに いたらこれほどうれしいことはない」<br> と ける。 にテレビで た た   の   く やかな  に  したという。<br>&nbsp;<br>     ではFCセルベットのマジッド・ビッシャー  と     ジュネーブ          のあいさつに き、1  の とうが      の   に げられた。その 、  の わりに  の を に けた    が  にスタートを った。  を けた    350 は、ゴールが まるごとに にした の を り  。<br>  <br>&nbsp; また、   には  に    の   り み が  された が られ、   にはスイス    を  にボランティアの   8 が   を って った。 くのスイス がコインの わりにお を れたという。</p>	<br><div>	<img src="http://www.swissinfo.ch/media/cms/images/swissinfo/2011/03/p1010729-29806022.jpg" alt="   を ってスイス  を った8 。 さな はすぐに  になったという">	<p>   を ってスイス  を った8 。<br>
EOT;


get_photos($output);
?>