2013-02-25 63 views
3

使用PHP 5.3.1,PCRE已啓用,並且版本爲7.9 2009-04-11。編譯失敗: P後的未知屬性名稱

$string = preg_replace("/\p{Number}/u", "", $string); 

產生錯誤: 編譯失敗:未知的屬性名\ P上之後。 。 。

我知道這是一個在PHP 5.3和更高版本中修復的錯誤,但我明顯地得到它和其他人使用我的腳本一樣。據我所知,這可能與正在使用的PCRE版本或編譯方式有關。

我無法控制正在使用的PHP的編譯版本。

  1. 如果PCRE編譯正確,有沒有辦法檢查PHP腳本?

  2. 我還使用:

    的preg_match( 「/ \ p {}露/ U」,$ caseChar); preg_match(「/ \ p {Ll}/u」,$ caseChar);preg_match(「/ \ p {L}/u」,$ string,$ caseChar);

如果發現不正確的PCRE(如果1.是可能的話),是否有替代上述preg_replace和preg_match表達式?

謝謝,

馬克

回答