2012-05-04 16 views

回答

3

你試過了嗎?

從你link

當使用PCRE功能,則需要該模式由分隔符包圍。分隔符可以是任何非字母數字,非反斜槓,非空白字符。

所以|是一個完全有效的分隔符。當您閱讀該頁面上的評論時,他們建議不要使用元字符(如|)作爲分隔符,因爲它們應該在正則表達式中使用。

由於您的示例$self = preg_replace('|^.*/wp-admin/|i', '', $self);中沒有更改,所以沒有問題,並且按預期工作。

當你在正則表達式中有一個變化時(例如preg_match("|(F|f)oo|", "Foobar")),你會得到一個警告「Unknown modifier'f'」,因爲解釋器認爲正則表達式在第一次交替時結束。

結論:這是允許的,但不建議使用正則表達式的元字符,如|^+,...爲正則表達式的分隔符。