我想提取兩個子串之間的子串。問題是它只會提取第一個。我想在我的所有文檔中都這樣做。如何獲取兩個子串之間的子串?
例子:
function getBetween($content,$start,$end){
$r = explode($start, $content);
if (isset($r[1])){
$r = explode($end, $r[1]);
return $r[0];
}
return '';
}
$document = '<a data-id="777777"></a><a data-id="888888"></a><a data-id="99999"></a>';
$content = $document;
$start = '<a data-id="';
$end = '"';
$data = getBetween($content,$start,$end);
echo $data;
$document2 = '<a data-A="AAAAAA"></a><a data-A="BBBBBB"></a><a data-A="CCCCCC"></a>';
$content = $document2;
$start = '<a data-A="';
$end = '"';
$data2 = getBetween($content,$start,$end);
echo $data2;
現在它僅取出777777
AAAAA
。但我要的是777777
AAAAAA
888888
BBBBBB
999999
CCCCC
使用http://php.net/manual/en/function.preg-match-all.php – Neodan
我得到了一些麻煩事情了。是否有另一種方法來實現這一結果? – user1708580