ホームページ > バックエンド開発 > PHPチュートリアル > PHP ereg 正規表現を PCRE に簡単に変換するにはどうすればよいですか?

PHP ereg 正規表現を PCRE に簡単に変換するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-03 21:53:42
オリジナル
639 人が閲覧しました

How Can I Easily Convert My PHP ereg Regular Expressions to PCRE?

PHP を使用した PCRE 式の変換

POSIX 正規表現 (ereg) は、PHP 5.3.0 以降では推奨されなくなりました。この記事では、古い ereg 式を、現在もサポートされている Perl 互換の正規表現 (PCRE または preg) に変換する簡単な方法を説明します。

構文の変更

主な違いpreg にデリミタが追加されていることに注意してください。式内の文字との衝突を防ぎます。一般的な区切り文字には、~、/、# などがあります。

区切り文字のエスケープ

式内に区切り文字が出現する場合は、エスケープする必要があります。たとえば、スラッシュを含む式にはエスケープが必要です。

preg_match('/^\/hello/', $str);
ログイン後にコピー

preg_quote の使用

エスケープ文字が適切に追加されていることを確認するには、preg_quote 関数を使用します。すべての区切り文字と予約文字をエスケープします:

$expr = preg_quote('/hello', '/');
preg_match('/^'.$expr.'/', $str);
ログイン後にコピー

大文字と小文字の区別

i 修飾子は、eregi:

preg_match('/^hello/i', 'HELLO');
ログイン後にコピー

リファレンスガイド

PHP の PCRE 構文に関する包括的なリファレンスについては、公式マニュアルを参照してください。さらに、このマニュアルには、変換プロセスを支援する、POSIX 正規表現と PCRE 正規表現の違いの内訳が含まれています。

単純な式のより単純な代替手段

提供された例では (文字列の先頭で「hello world」と一致する場合)、正規表現は不要な場合があります:

以上がPHP ereg 正規表現を PCRE に簡単に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート