preg_match_all() 函数用于进行正则表达式全局匹配,成功返回整个模式匹配的次数(可能为零),如果出错返回 FALSE 。
int preg_match_all( string pattern, string subject, array matches [, int flags ] )
pattern | 正则表达式 |
subject | 需要匹配检索的对象 |
matches | 存储匹配结果的数组 |
flags | 可选,指定匹配结果放入 matches 中的顺序,可供选择的标记有:
|
$str = '2015-9-15 XXXXXXXX,2015-9-15 XXXXXXXX,2015-9-15 XXXXXXXX,2015-9-15 XXXXXXXX,'; preg_match_all('/\d{4}-\d+\-\d+(.*?),/is', $str, $matched); echo "<pre>"; print_r($matched); echo "</pre>"; exit;
参数为 默认
$matched =
Array ( [0] => Array ( [0] => 2015-9-15 XXXXXXXX, [1] => 2015-9-15 XXXXXXXX, [2] => 2015-9-15 XXXXXXXX, [3] => 2015-9-15 XXXXXXXX, ) [1] => Array ( [0] => XXXXXXXX [1] => XXXXXXXX [2] => XXXXXXXX [3] => XXXXXXXX ) )
数组$matched[0] 表示 全匹配的数组。表示: \d{4}-\d+\-\d+(.*?), 所匹配的信息,包括 非括号中的信息
$matched[1] 表示第一个括号中的数组信息。如果有第二个括号,会有$matched[2] 匹配括号2中的信息
$str = '2015-9-15 XXXXXXXX,2015-9-15 XXXXXXXX,2015-9-15 XXXXXXXX,2015-9-15 XXXXXXXX,'; preg_match_all('/\d{4}-\d+\-\d+(.*?),/is', $str, $matched,PREG_SET_ORDER); echo "<pre>"; print_r($matched); //print_r($matched[1]); echo "</pre>"; exit;
Array ( [0] => Array ( [0] => 2015-9-15 XXXXXXXX, [1] => XXXXXXXX ) [1] => Array ( [0] => 2015-9-15 XXXXXXXX, [1] => XXXXXXXX ) [2] => Array ( [0] => 2015-9-15 XXXXXXXX, [1] => XXXXXXXX ) [3] => Array ( [0] => 2015-9-15 XXXXXXXX, [1] => XXXXXXXX ) )