我在这里发现了一个类似的问题,但并不完全符合我的情况。我对 PHP 比较陌生,但已经阅读了 *preg_match_all* 的手册。
我正在解析页面以查找日期。它始终采用相同的格式(例如13 Apr 2012)。这是我的 *preg_match_all* 声明:
$eventDateRegex = '/[0-9]{2}\s[A-Z]{1}[a-z]{2}\s[0-9]{4}/';
preg_match_all($eventDateRegex, $parsedEvent, $eventDates[$i]);
$i只是一个迭代器,因为它在for循环中。我在$eventDates中收到了正确的结果,但是,它似乎嵌套得太深了一层。
我的结果是这样的:
array
0 =>
array
0 =>
array
0 => string '19 Apr 2012' (length=11)
1 => string '24 May 2012' (length=11)
1 =>
array
0 =>
array
0 => string '21 Apr 2012' (length=11)
1 => string '30 Jun 2012' (length=11)
而我更希望它是:
array
0 =>
array
0 => string '19 Apr 2012' (length=11)
1 => string '24 May 2012' (length=11)
1 =>
array
0 => string '21 Apr 2012' (length=11)
1 => string '30 Jun 2012' (length=11)
这是可能的还是仅仅是因为 *preg_match_all* 吐出多维数组的方式?