使用以下代码我匹配一个9位数的字符串。我成功地在不使用循环的情况下返回第一个实例,但我希望通过整个页面查看并返回每个9位数的字符串,到目前为止它没有这样做。它只返回NULL
。循环返回所有匹配
$source = file_get_contents($url);
preg_match('/cd=([0-9]{9})/', $source, $match);
foreach ($match[1] as $output)
{
echo $output;
}
使用以下代码我匹配一个9位数的字符串。我成功地在不使用循环的情况下返回第一个实例,但我希望通过整个页面查看并返回每个9位数的字符串,到目前为止它没有这样做。它只返回NULL
。循环返回所有匹配
$source = file_get_contents($url);
preg_match('/cd=([0-9]{9})/', $source, $match);
foreach ($match[1] as $output)
{
echo $output;
}
的preg_match()返回的时间模式相匹配的数量。这将是0次(不匹配)或1次,因为preg_match()将在第一场比赛后停止搜索。相反,preg_match_all()会一直持续到主题结束。 preg_match()返回FALSE如果发生错误。
$match
数组可能看起来不同,所以你必须调整你的循环。
不要忘了'\ D'快捷方式:) – alex 2011-05-05 01:17:52