ホームページ >バックエンド開発 >PHP7 >正規表現マッチングに PHP7.0 を使用するにはどうすればよいですか?

正規表現マッチングに PHP7.0 を使用するにはどうすればよいですか?

WBOY
WBOYオリジナル
2023-05-31 08:10:351383ブラウズ

インターネット技術の発展に伴い、PHP は人気のあるプログラミング言語として Web 開発で広く使用されるようになりました。正規表現は、Web 開発で文字列とテキストを照合するためによく使用されるツールの 1 つでもあります。 PHP バージョン 7.0 以降では、正規表現の強力なサポートが提供されます。この記事では、PHP 7.0 を使用して正規表現マッチングを行う方法について説明します。

  1. 正規表現の基本構文

正規表現は、いくつかの文字と特殊記号で構成される文字列一致パターンです。 PHP では、正規表現のマッチングに preg_match() 関数を使用できます。

  • メタキャラクター

メタキャラクターは、正規表現内の特殊文字であり、特別な一致ルールを表すために使用されます。 (.) は任意の文字と一致することを意味し、アスタリスク (*) は 0 文字以上の文字と一致することを意味し、プラス記号 () は 1 つ以上の文字と一致することを意味し、疑問符 (?) は 0 文字または 1 つの文字と一致することを意味します。

  • 文字セット

文字セットは角かっこで囲まれています。これは、文字セット内の任意の文字と一致することを意味します。たとえば、文字セット [abc] は、文字 a、b、または c のいずれかに一致することを意味します。

  • エスケープ文字

一部の特殊文字は、使用する前にエスケープする必要があります。たとえば、バックスラッシュ () はエスケープ文字を表し、左括弧 (( ) はキャプチャ グループの開始を表し、右括弧 ()) はキャプチャ グループの終了を示します。

  1. preg_match() 関数の使用法

PHP では、preg_match() 関数を使用して正規表現を照合できます。この関数の基本的な構文は次のとおりです:

preg_match(pattern, subject, matches, flags, offset);

パラメータの説明:

  • pattern: 正規表現パターン;
  • subject: ターゲット文字列;
  • matches (オプション): 一致結果が保存される配列;
  • flags (オプション): 一致フラグ、オプションの値には i、m、s、U が含まれます;
  • offset (オプション) (オプション): 開始位置のオフセットを検索します。

次に、文字列に対する正規表現マッチングの例を示します。

$str = "Hello, world!";
if (preg_match("/Hello/", $str) === 1) {
    echo "匹配成功!";
} else {
    echo "匹配失败!";
}

上記のコードは出力します。 Match success!

  1. 一般的に使用される正規表現パターン
  • 一致番号
preg_match("/^d+$/", $str);
  • 一致日付
preg_match("/^d{4}-d{2}-d{2}$/", $str);
  • 電子メール アドレスと一致します
preg_match("/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/", $str);
  • URL と一致します
preg_match("/^(http|https)://[a-z0-9]+([-.]{1}[a-z0-9]+)*.[a-z]{2,5}(([0-9]{1,5})?/.*)?$/", $str);
  • 携帯電話番号と一致します
preg_match("/^1[3456789]d{9}$/", $str);
  1. preg_match_all() 関数の使用法

preg_match_all() 関数は preg_match() 関数に似ており、正規表現のマッチングにも使用されます。違いは、ターゲット文字列内のすべての出現と一致し、最初に一致した結果を返すのではなく、すべての一致結果を配列に格納することです。関数の基本的な

構文は次のとおりです。

preg_match_all(pattern, subject, matches, flags, offset);

パラメータの説明は preg_match() 関数と同じです。

次は例です:

$str = "https://www.example.com https://www.google.com https://www.facebook.com";
preg_match_all("/https://www.w+.com/", $str, $matches);
print_r($matches[0]);

上記のコードは出力します:

Array
(
    [0] => https://www.example.com
    [1] => https://www.google.com
    [2] => https://www.facebook.com
)
  1. preg_replace() 使用法

preg_replace ( ) 関数は、ターゲット文字列内の正規表現を置換するために使用されます。関数の基本的な構文は次のとおりです:

preg_replace(pattern, replacement, subject, limit, count);

パラメータの説明:

  • pattern: 正規表現パターン;
  • replacement: 置換文字列またはコールバック関数;
  • subject: ターゲット文字列;
  • limit (オプション): 置換の最大数;
  • count (オプション): 置換の数を保存するために使用される変数。

次は例です:

$str = "Hello, world!";
echo preg_replace("/Hello/", "Hi", $str);

上記のコードは出力します: Hi, world!

つまり、正規表現は非常に強力なツールです。文字列の照合と置換を行う場合に便利です。 PHP 7.0 は強力な正規表現サポートを提供し、PHP での正規表現の使用が非常に簡単になります。基本的な構文と正規表現の一般的なパターンを学ぶだけで、文字列の一致と置換が簡単に行えます。

以上が正規表現マッチングに PHP7.0 を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。