我寫了一個正則表達式模式,當我在Regexr中測試它時,它完美地工作,但是當我在我的PHP代碼中使用它時,它並不總是匹配。PHP的正則表達式反向引用不起作用
The regular expression,包括一些應該和不應該匹配的示例。
示例PHP代碼應該匹配,但不會:
preg_match('/^([~]{3,})\s*([\w-]+)?\s*(?:\{([\w-\s]+)\})?\s*(\2[\w-]+)?\s*$/', "~~~ {class} lang", $matches);
echo var_dump($matches);
我相信這個問題是由最後捕獲組(\2[\w-]+)
在逆向引用造成的,但是,我不能一刀弄清楚如何解決這個。
我喜歡,你怎麼說明吧:) – 2014-09-21 16:30:00
謝謝,你和@hwnd幫我弄明白了。 – CupOfTea696 2014-09-21 21:26:06