3

サイトで正規表現を実行しようとしていますが、次の応答が返されます。

コンパイルに失敗しました: \P、\p、および \X のサポートがオフセット 1 でコンパイルされていません

少しグーグルで調べたところ、どうやらサーバー上の私の PCRE が UTF8 に対応していないため、問題が発生していることがわかりました。pcretest -CI get で ssh すると

PCRE バージョン 6.6 2006 年 2 月 6 日

UTF-8 サポートでコンパイル Unicode プロパティのサポートなし 改行文字は LF 内部リンク サイズ = 2 POSIX malloc しきい値 = 10
デフォルトの一致制限 = 10000000
デフォルトの再帰深度制限 = 10000000 一致再帰はスタックを使用

yum update pcre を実行すると、更新するものがないと表示されます。

UTF-8 サポートをオンにできると人々から言われています...助けてくれませんか?

私は初心者です。

4

3 に答える 3

3

Yum はv6.6.6.el5_6.1リポジトリで PCRE を見つける必要があるため、 yum update pcreCentos 5 で問題を解決しました。

于 2011-07-06T05:15:26.613 に答える
3

pcre 用の RPM の再構築に関する優れたチュートリアルがここにあります

「Updated RPM file for...」まで下にスクロールすると、ビルド済みの RPM がいくつか見つかります (正常にリロードするだけでなく、完了後に Apache を再起動することを忘れないでください)。

tl;dr バージョンは次のとおりです--enable-utf8--enable-unicode-properties

于 2010-01-21T04:59:56.917 に答える
1

PHPは「pcre」アプリケーション/パッケージを使用しません。PCREサポートはPHPライブラリに組み込まれています。発生するエラーは、PHPライブラリがPCREUTF-8サポートでコンパイルされていないことを示しています。

適切なUTF-8オプションで構築された適切なPCRE静的ライブラリを使用してPHPを再コンパイルする必要があります。

于 2010-01-21T04:21:02.703 に答える