我需要檢索值6Lf4,但它只是返回數組..我做錯了什麼?php:字符串之間的正則表達式不正確
<?php
$inputString = 'private="key" value="6Lf4" sent="yut"';
$matches = array();
preg_match_all('/key" value="(.*?)"/', $inputString, $matches);
echo $matches[1];
?>
我需要檢索值6Lf4,但它只是返回數組..我做錯了什麼?php:字符串之間的正則表達式不正確
<?php
$inputString = 'private="key" value="6Lf4" sent="yut"';
$matches = array();
preg_match_all('/key" value="(.*?)"/', $inputString, $matches);
echo $matches[1];
?>
入住這裏:http://php.net/manual/en/function.preg-match-all.php
你想做的事:
echo $matches[1][0];
這是因爲您正確使用鍵1來獲取帶圓括號的子模式,但您希望獲得此類型的第一個匹配項,因此您需要獲取索引爲0的那個子數組的值。
所以你在這裏一半,但你需要得到你返回的數組內的實際值。
基於http://ideone.com/vDV7yE,你會想用$matches[1][0]
讓你的字符串:
Array
(
[0] => Array
(
[0] => key" value="6Lf4"
)
[1] => Array
(
[0] => 6Lf4
)
)