Php preg_匹配后跟数字的单词

Php preg_匹配后跟数字的单词,php,preg-match,preg-match-all,Php,Preg Match,Preg Match All,我有以下字符串: Query_time: 77.571216 Lock_time: 2.793139 Rows_sent: 20 Rows_examined: 4654071 如何将每个数字放入变量中? 例如: 答案几乎与稍微更改的答案相同,我使用的是标志,因此不需要在列表的开头有$null变量:) 答案几乎与稍微更改的答案相同,我使用的是标志,因此不需要在列表的开头有$null变量:) $query_time = 77.571216; $lock_time = 2.7931

我有以下字符串:

Query_time: 77.571216 Lock_time: 2.793139 Rows_sent: 20 Rows_examined: 4654071
如何将每个数字放入变量中? 例如:

答案几乎与稍微更改的答案相同,我使用的是标志,因此不需要在列表的开头有$null变量:)

答案几乎与稍微更改的答案相同,我使用的是标志,因此不需要在列表的开头有$null变量:)

$query_time    = 77.571216;  
$lock_time     = 2.793139;
$rows_sent     = 20;
$rows_examined = 4654071;
if (preg_match('/Query_time: ([0-9.]+) Lock_time: ([0-9.]+) Rows_sent: ([0-9.]+) Rows_examined: ([0-9.]+)/', $string, $matches)) {
    list($query_time, $lock_time, $rows_sent, $rows_examined) =
            array_slice($matches, 1);
}
$str = 'Query_time: 77.571216 Lock_time: 2.793139 Rows_sent: 20 Rows_examined: 4654071';
list($null, $query_time, $lock_time, $rows_sent, $rows_examined) = preg_split('/\S+:/',$str);
$str = 'Query_time: 77.571216 Lock_time: 2.793139 Rows_sent: 20 Rows_examined: 4654071';
list($query_time, $lock_time, $rows_sent, $rows_examined) = preg_split('/\S+:/',$str, 0, PREG_SPLIT_NO_EMPTY);