PHP 正規表現の基本と簡単な例

*文
リリース: 2023-03-18 09:50:02
オリジナル
1874 人が閲覧しました

正規表現を書くのは頭の痛いことがよくありますが、しばらくすると、書いたばかりの正規表現が理解できなくなることがあります。この記事では、正規表現の基本構文と簡単な PHP コード例を紹介します。正規表現を作成する必要があるときに友人が読むのに便利です。

先頭の ^ と末尾の $ は、文字列の先頭から末尾までをチェックするように PHP に指示します。 $ がなければ、プログラムは最後まで一致します。

[ と ] は、権限の入力タイプを制限するために使用されます。たとえば、a ~ z ではすべての小文字が許可され、A ~ Z ではすべての大文字が許可され、0 ~ 9 ではすべての数字が許可されます。

{ と } は、予想される文字数を制限するために使用されます。たとえば、{2,4} は、.com.cn や .info など、文字列の各セクションの長さが 2 ~ 4 文字であることを意味します。ここで、「.」は文字としてカウントされません。{2,4} より前に定義された許可された入力タイプには大文字と小文字のみが含まれるため、この段落は大文字と小文字のみに一致します

( と ) はセクションをマージするために使用されますおよび定義文字 文字列内に存在する必要がある文字。 (a|b|c) は、a、b、または c と一致します。

(.) はすべての文字に一致しますが、[.] は「.」自体にのみ一致します。

一部の記号自体を使用するには、先頭に記号を追加する必要があります。これらの文字は次のとおりです: ( ) [ ] . * ? + ^ | $

添付ファイル: PCRE 構文ガイド

/ 区切り文字
^ 文字列ヘッダー
$ 文字列末尾
[a-z] すべて小文字
[A-Z ] すべて大文字
[0-9] すべての数字
? 直前の 0 文字または 1 文字
* 直前の 0 文字以上の文字
+ 直前の 1 文字以上の文字
{4} 直前の 4 文字
{4,8} 4-8 文字
の直前に任意の文字
(赤|緑|青) 赤または緑または青 (赤または緑または青)
スペース

特殊文字 (前に追加する必要があります)
( ) * + ^ | $

ルールマッチング preg_match

preg_match() を使用すると、文字列のルールマッチングを完了できます。 preg_match() 関数は、一致が見つかった場合は 1 を返し、そうでない場合は 0 を返します。オプションの 3 番目のパラメーターを使用すると、一致した部分を配列に保存できます。この機能は、データを検証するときに非常に役立ちます。
$string = "football";
if (preg_match('/foo/', $string)) {
// 正しい一致
}

ルール置換 preg_replace

preg_replace を使用すると、文字列内の一致を次のように置き換えることができます。あなたの定義の正規表現。
$val = "/*123456789*/abcd";
$pp = preg_replace("/[(/*)+(.)(*/)+]+/",'fuck',$val);
print_r ($pp);
結果は
fuck123456789fuckabcd

ルール分割preg_split

preg_splitは、一致した正規表現に従って文字列全体を1、2、またはそれ以上の文字の複数のセグメントに分割できます。たとえば、タグをスペースまたはカンマで区切って取得するには:
$tags = preg_split('/[,]/', 'my,tags,unevenly,spaced');
print_r($tags);
結果は次のようになります。 :
配列 ( [0] => 私の [1] => タグ [2] => 不等間隔 [3] => 間隔)


関連する推奨事項:

PHPの歴史 正規表現_正規表現

PHPの正規表現におけるpreg_match_all関数の詳しい説明

PHPの正規表現におけるpreg_match関数の詳しい説明

以上がPHP 正規表現の基本と簡単な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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