解釋我的問題的最好方法是向您展示。在PHP中使用簡單正則表達式的問題
輸入字符串:
/04-11-2010/12:45/
正則表達式來獲取日期和時間部分:
preg_match('@/(\d\d)-(\d\d)-(\d\d\d\d)/(\d\d):(\d\d)/@', $input, $matches);
PHP匹配陣:
Array
(
[0] => /01-11-2010/12:45/
[1] => 01
[2] => 11
[3] => 2010
[4] => 12
[5] => 45
)
現在,上面的正則表達式可以完美地獲取表示輸入字符串中日期和時間的各個組件部分。
問題是時間部分需要是可選的,而不必關閉整個正則表達式。
問題輸入字符串:
/04-11-2010//
PHP匹配陣列
Array
(
)
基本上我有什麼需要通過比賽陣列返回是:
Array
(
[0] => /01-11-2010/12:45/
[1] => 01
[2] => 11
[3] => 2010
[4] =>
[5] =>
)
注ARR ay元素4和5仍然需要存在但返回空。
我太遲了!來吧,你不需要這樣的正則表達式;) – Rowlf 2010-02-24 00:23:47
@Rowlf其實日期的使用只是一個例子。實際上,我得到了一個更大的輸入字符串,它需要一個正則表達式來提取所有數據。我只需要知道如何捕捉一個組,即使它不匹配。 – Camsoft 2010-02-24 00:38:25
@Camsoft Fair夠:) – Rowlf 2010-02-24 01:06:41