PHP 5.3.1 を使用すると、PCRE が有効になり、バージョン 7.9 2009-04-11 になります。
$string = preg_replace("/\p{Number}/u", "", $string);
次のエラーが生成されます: コンパイルに失敗しました: \P の後の不明なプロパティ名。. .
これは PHP 5.3 以降で修正されたバグであることは理解していますが、私のスクリプトを使用している他のユーザーと同じように、明らかに問題が発生しています。私の知る限り、使用されている PCRE のバージョンまたはコンパイル方法に関係している可能性があります。
使用されているコンパイル済みの PHP のバージョンを制御することはできません。
PCRE が正しくコンパイルされているかどうかを PHP スクリプトで確認する方法はありますか?
私も使用しています:
preg_match("/\p{Lu}/u", $caseChar); preg_match("/\p{Ll}/u", $caseChar); preg_match("/\p{L}/u", $string, $caseChar);
正しくない PCRE が見つかった場合 (1. 可能であれば)、上記の preg_replace および preg_match 式に代わるものはありますか?
ありがとう、
マーク