0
,我發現這個在相同的反向引用的子模式,PHP PCRE正則表達式
http://www.php.net/manual/en/regexp.reference.subpatterns.php
(|(星期六)烏爾|(星期日))日
這意味着(星期六)和Sun將以相同的順序
匹配,但是當我使用RegexBuddy測試occurr一個錯誤 ABT語法 感謝
,我發現這個在相同的反向引用的子模式,PHP PCRE正則表達式
http://www.php.net/manual/en/regexp.reference.subpatterns.php
(|(星期六)烏爾|(星期日))日
這意味着(星期六)和Sun將以相同的順序
匹配,但是當我使用RegexBuddy測試occurr一個錯誤 ABT語法 感謝
這個建議立即進行刪除d與PCRE的最新版本一起工作良好 - 您是否確定將regexbuddy切換爲PCRE模式?
您還需要一個相當新的版本。我的PHP 5.2.6安裝太舊了(PCRE 6.6 2006-02-06),而PHP 5.2.17(8.02 2010-03-19)很好。
這個測試PHP程序:
$a = "it is Sunday tomorrow";
preg_match('/(?|(Sat)ur|(Sun))day/', $a, $m);
print_r($m);
輸出這樣的:
Array
(
[0] => Sunday
[1] => Sun
)
如果PCRE的版本太舊,你會得到這樣的錯誤:
Compilation failed: unrecognized character after (? at offset 2
是,我用3.5.1,太老了謝謝。 – tqwer 2012-04-24 15:58:13