20121002153055 A 5 9 0 4 5 1 3 T 0 9 U
请问如何取出上面字符串中的5904?并分别存入数组$arr[0],$arr[1],$arr[2],$arr[3]中?
第1个回答 2012-10-07
根据你给定的字符串,以下是示例代码:
<?php
$str = '20121002153055 A 5 9 0 4 5 1 3 T 0 9 U';
$pa = '/(\d) (\d) (\d) (\d)/si';
preg_match_all($pa,$str,$arr);
echo '<pre>';
print_r($arr);
echo '</pre>';
?>
5904,分别存入数组$arr[1],$arr[2],$arr[3],$arr[4]中
<?php
$str = '20121002153055 A 5 9 0 4 5 1 3 T 0 9 U';
$pa = '/(\d) (\d) (\d) (\d)/si';
preg_match_all($pa,$str,$arr);
echo '<pre>';
print_r($arr);
echo '</pre>';
?>
5904,分别存入数组$arr[1],$arr[2],$arr[3],$arr[4]中
第2个回答 2012-10-11
原始字符串好纠结,稍微改一下楼上的代码:
<?php
$str = '20121002153055 A 5 9 0 4 5 1 3 T 0 9 U';
$pa = '/(\d)\s+(\d)\s+(\d)\s+(\d)\s+/si';
$arr = array();
if (preg_match($pa, $str, $matches)) {
$arr[0] = $matches[1];
$arr[1] = $matches[2];
$arr[2] = $matches[3];
$arr[3] = $matches[4];
}
echo '<pre>';
print_r($arr);
echo '</pre>';
?>
<?php
$str = '20121002153055 A 5 9 0 4 5 1 3 T 0 9 U';
$pa = '/(\d)\s+(\d)\s+(\d)\s+(\d)\s+/si';
$arr = array();
if (preg_match($pa, $str, $matches)) {
$arr[0] = $matches[1];
$arr[1] = $matches[2];
$arr[2] = $matches[3];
$arr[3] = $matches[4];
}
echo '<pre>';
print_r($arr);
echo '</pre>';
?>