我的代碼運行良好 - 但我不明白結果。我的目標是確保傳入的值是這些格式之一:正則表達式preg_match返回的結果太多了嗎?
- 00000-0000
PHP:
$str = '12345-6789';
preg_match('/^[0-9]{5}(-?[0-9]{4})?$/', $str, $found);
print_r($found);
返回:
Array
(
[0] => 12345-6789
[1] => -6789
)
爲什麼我會得到第二個結果[1] => -6789
?
謝謝!
謝謝!我知道了。有點像Apache反向引用。 – 2013-04-30 16:52:15
@jared_flack他們不是特定於Apache。反向引用是對同一個表達式中被捕獲的組的引用(例如,'(\ d)\ 1' - '1'是對所捕獲的數字的反向引用)。 – 2013-04-30 16:57:48