php截取html
A. 在一個html文件中怎樣使用php截取字元串
<?php
$str="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
echo"原字元串:".$str."<br>";
//按各種方式進行截取
$str1=substr($str,5);
echo"從第5個字元開始取至最後:".$str1."<br>";
$str2=substr($str,9,4);
echo"從第9個字元開始取4個字元:".$str2."<br>";
$str3=substr($str,-5);
echo"取倒數5個字元:".$str3."<br>";
$str4=substr($str,-8,4);
echo"從倒數第8個字元開始向後取4個字元:".$str4."<br>";
$str5=substr($str,-8,-2);
echo"從倒數第8個字元開始取到倒數第2個字元為止:".$str5;
?>
B. php如何快速獲取其它網頁的html源碼,如何截取某一特定部分
$url = "http://20.08.cn/?beijing";
$r = file_get_contents($url);
下面用證則表達式。。替換即可!
C. php正則表達來獲取html中的部分內容
1、幾種函數的簡單說明:
(1)preg_grep -- 返回與模式匹配的數組單元
preg_grep 返回一個input 數組中與給定的 pattern 模式相匹配的單元所組成的數組。
(2)preg_match -- 進行正則表達式匹配
說明:int preg_match ( string pattern, string subject [, array matches [, int flags]] )在 subject 字元串中搜索與 pattern 給出的正則表達式相匹配的內容。 返回值0或1。
(3)preg_replace -- 執行正則表達式的搜索和替換
(4)preg_split -- 用正則表達式分割字元串
2. 一般來說,如果用正則來獲取匹配內容,一般使用 preg_match/ preg_match_all 函數。
補充回答:
正則表達式如下:
'%<div class="wap2"><span>功能</span>(.*?)</div>%si'
以下是代碼,經測試,運行正常:
<?php
$str = '<div class="wap2"><span>功能</span>這裡面是要獲取的內容,不能確定什麼字元,可能是數字(123456…)字母(badn…),特殊浮等(o_O\(^o^)/…)</div>';
$pa = '%<div class="wap2"><span>功能</span>(.*?)</div>%si';
preg_match($pa,$str,$r);
echo $r[1];
?>
D. php正則提取HTML中的內容
那就無需正則了!
php本身就有一個函數:strip_tags()
這個函數有2個參數
第一個:需要過濾的字元串, 在這里也就是你說的html, 這個函數必須
第二個:要保留的html標簽, 就是設置你不想過濾掉的html標簽, 這個函數可選!
在第二個參數預設的情況下, 會將所有html標簽過濾掉!
還要什麼正則呢???
E. php正則表達式截取HTML標簽中的內容
header('content-type:text/html;charset=utf-8');
$str='<li><ahref="/news1397/"title="1827年3月5日義大利物理學家伏打逝世">1827年3月5日義大利物理學家伏打逝世</a></li>
<li><ahref="/news1398/"title="1871年3月5日波蘭女革命家盧森堡誕辰">1871年3月5日波蘭女革命家盧森堡誕辰</a></li>
<li><ahref="/news1399/"title="1886年3月5日董必武誕辰">1886年3月5日董必武誕辰</a>(圖)</li>';
preg_match_all('/<a.*>(.*)</a>/im',$str,$matches);
var_mp($matches[1]);
F. php用正則獲取html標簽內容
推薦使用querylist
<?php
header("Content-type:text/html;charset=utf-8");
require'QueryList/QueryList.class.php';
$url="要抓取的網站";
$reg=array(
"title"=>array("a","text"),
"src"=>array("a","href"),
);
//$rang="[id^=post-]";
$hj=QueryList::Query($url,$reg);
print_r($hj->jsonArr);
G. php截取指定html標簽之間的字元串
$strPath = '這個html的路徑';
curl_setopt ($ch, CURLOPT_URL, $strPath);
curl_setopt ($ch, CURLOPT_HEADER, 1);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$contents = curl_exec($ch);
if($contents){
$intH1start= strpos($contents, '<h1>');//這樣的前提是這個頁面只有一個<h1>標簽
$intH1end = strpos($contents, '</h1>');//如果有多個則會取不準
$strH1 = substr(contents,$intH1start,$intH1end);
}
試試以上的方法,如果可以的話請採納,有問題的話,請追問或留言
H. php抓取網頁的部分html代碼如何替換
以下為示例代碼:
<?php
$string='<emclass="blue">';
$pattern='/<emclass="blue">/i';
$replacement='';
preg_replace($pattern,$replacement,$string);
$str1=str_replace('<emclass="blue">','',$string);
echo'str1:'.$str1;
?>
提示:通常情況下,如果能用字元串處理函數的盡量不要用正則來處理,影響效率。