1
我想提出一個返回標籤之間的內容(無論是整個字符串或者開始標籤後的指定數量的字母) 線性代碼如下功能:函數返回子和修剪串
$tag='<body>';
//case1
$source=substr($source,strpos($source,$tag)+strlen($tag));
$sub=substr($source,0,strpos($source,'<'));
//case2
$source=substr($source,strpos($source,$tag)+strlen($tag));
$sub=substr($source,0,3);
該函數將接受3個參數:源代碼,指定的標記和子字符串長度(對於情況2)並將返回2個變量:修剪後的源和子字符串。所以basicaly我想有這樣的功能:
function p($source,$tag,$len) {
$source=substr($source,strpos($source,$tag)+strlen($tag));
if(isset($len)) $sub=substr($source,0,$len);
else $sub=substr($source,0,strpos($source,'<'));
$ret=array();
$ret[0]=$source;
$ret[1]=$sub;
return $ret;
}
//
$source=p($source,'<strong>')[0];
$sub1=p($source,'<strong>')[1];
$source=p($source,'<p>',100)[0];
$sub2=p($source,'<p>',100)[1];
這是什麼語言?請用該語言重新標記。 –
也許使用XML解析器? http://www.codinghorror.com/blog/2009/11/parsing-html-the-cthulhu-way.html –
@FrostyZ我不需要解析所有的代碼,只需選擇標籤和1個函數就足夠了。 – user965748