正则表达式 去除连续空白 + 获取url +分割url + 获取图片

关联:

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('/[\n| |\s]{2,}/','',$code);

// 保留一个空格
$code = preg_replace('/[\n| |\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);
?>
 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值