ホームページ  >  記事  >  バックエンド開発  >  PHP で最もよく使用される正規表現

PHP で最もよく使用される正規表現

墨辰丷
墨辰丷オリジナル
2018-05-25 14:54:191758ブラウズ

この記事では、PHPでよく使われる正規表現を整理して紹介します。とても良い参考値なので、以下のエディタで見てみましょう

1. チェックデジットの表現

数値: ^[0-9]*$

n桁の数値: ^d{ n} $

少なくとも n 桁の数値: ^d{n,}$

m-N 桁: ^d{m,n}$

ゼロで始まる数値およびゼロ以外の数値: ^(0|[1- 9] [0-9]*)$

ゼロ以外で始まり小数点以下 2 桁までの数値: ^([1-9][0-9]*)+(.[0-9]{1,2 })?$

小数点以下 1 ~ 2 桁の正または負の数: ^(-)?d+(.d{1,2})?$

正の数、負の数、および小数: ^(-|+ )?d+(.d+)?$

小数点以下 2 桁の正の実数: ^[0-9]+(.[0-9]{2})?$

1~3 の正の実数小数点以下の桁数:^[0-9]+(.[0-9]{1,3})?$

ゼロ以外の正の整数: ^[1-9]d*$ または ^([1-9] [0 -9]*){1,3}$ または ^+?[1-9][0-9]*$

ゼロ以外の負の整数: ^-[1-9][]0-9″ *$ または ^-[1-9]d*$

非負の整数: ^d+$ または ^[1-9]d*|0$

非正の整数: ^-[1-9]d *|0$ または ^((-d+)|(0+))$

非負の浮動小数点数: ^d+(.d+)?$ または ^[1-9]d*.d*|0。 d*[1-9 ]d*|0?.0+|0$

非正の浮動小数点数: ^((-d+(.d+)?)|(0+(.0+)?)) $ または ^(-([1 -9]d*.d*|0.d*[1-9]d*))|0?.0+|0$

正の浮動小数点数: ^[1- 9]d*.d*|0 .d*[1-9]d*$ または ^(([0-9]+.[0-9]*[1-9][0-9]*)| ([0-9]*[1 -9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$

負の浮動小数点数: ^-([1 -9]d*.d*|0.d*[1-9]d*)$ または ^(-(([0-9]+.[0-9] *[1-9][0-9 ]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1 -9][0-9]*) ))$

浮動小数点数: ^(-?d+)(.d+)?$ または ^-?([1-9]d*.d*|0.d *[1-9]d*|0? .0+|0)$

2. チェック文字の表現

漢字: ^[u4e00-u9fa5]{0,}$

英語と数字: ^[A-Za-z0-9] +$ または ^[A-Za-z0-9]{4,40}$

長さ 3 ~ 20 のすべての文字: ^.{3,20}$

A 26 文字の英字で構成される文字列: ^[A-Za-z]+$

26 文字の大文字で構成される文字列: ^[A-Z]+$

26 文字の小文字で構成される文字列: ^[a-z]+ $

数字と 26 個の英字で構成される文字列: ^[A-Za-z0-9]+$

数字、26 個の英字またはアンダースコアで構成される文字列: ^w+$ または ^w{3,20 } $

中国語、英語、アンダースコアを含む数字: ^[u4E00-u9FA5A-Za-z0-9_]+$

中国語、英語、アンダースコアおよびその他の記号を除く数字: ^[u4E00-u9FA5A-Za-z0- 9 ]+$ または ^[u4E00-u9FA5A-Za-z0-9]{2,20}$

「^%&',;=?$」を含む文字を入力できます: [^%&',;=? $ x22]+

~を含む文字の入力は禁止です: [^~x22]+

3. 特殊な表現

メールアドレス: ^w+([-+.]w+)*@w+([ - .]w+)*.w+([-.]w+)*$

ドメイン名: [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[ a- zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?

インターネット URL: [a-zA-z]+://[^s]* または ^ http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$

携帯電話番号: ^(13[0-9]|14[ 5| 7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])d{8 }$

電話番号 ("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"、および "XXXXXXXX"): ^($$d{3,4} -)| d{3.4}-)?d{7,8}$

国内電話番号 (0511-4405222、021-87888822): d{3}-d{8}|d{4}-d{7 }

ID 番号 (15 桁、18 桁): ^d{15}|d{18}$

短い ID 番号 (数字、x で終わる文字): ^([0-9]){7,18 } (x| -16 バイト、英数字のアンダースコアを使用可能): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$

パスワード (文字で始まり、長さは 6~ の間です) 18、文字、数字、アンダースコアのみを含めることができます): ^[a-zA-Z]w{5,17}$

強力なパスワード (大文字、小文字、数字の組み合わせを含む必要があります。特殊文字は使用できません)長さは 8 ~ 10 の間です): ^(?=.*d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

日付形式: ^d {4}-d{ 1,2}-d{1,2}

年間 12 か月 (01~09 および 1~12): ^(0?[1-9]|1[0-2] )$

毎月 1 つの 31 日 (01~09 および 1~31): ^((0?[1-9])|((1|2)[0-9])|30|31)$

お金の入力形式:

    受け入れられるお金の表現形式は 4 つあります: "10000.00" と "10,000.00"、および "セント" なしの "10000" と "10,000": ^[1-9] [0-9 ]*$
  • これは、0 で始まらない任意の数値を意味します。ただし、文字「0」は渡されないことも意味するため、次の形式を使用します: ^(0|[1 -9][0 -9]*)$
  • A 0、または 0 で始まらない数値。先頭に負符号を使用することもできます: ^(0|-?[1-9][ 0-9]*)$
  • これは、0、または負の可能性があり、0 で始まらない数値を意味します。ユーザーは 0 から始めましょう。お金が負になることは決してないので、負の符号も削除します。次に追加するもの 可能な小数部分を示します: ^[0-9]+(.[0-9]+)?$
  • の後に少なくとも 1 桁が必要であることに注意してください。小数点なので、「10.」は渡されませんが、「10」と「10.2」は渡されます: ^[0-9]+(.[0-9]{2})?$
  • 、小数点以下 2 桁でなければならないと規定していますが、厳しすぎると思われる場合は、次のようにすることもできます: ^[0-9]+(.[0-9]{1,2})?$
  • これにより、ユーザーは小数点以下 1 桁だけを書き込むことができます。次に、数値のカンマを考慮する必要があります。これを行うことができます。 ^[0-9]{1,3}(,[0-9]{3})*(.[0-9]{1,2}) ? $
  • 1 ~ 3 個の数値、その後に任意の数のカンマ + 3 個の数値。カンマは必須ではなくオプションになります: ^([0-9]+|[0-9]{1,3}(,[ 0- 9]{3})*)(.[0-9]{1,2})?$

  • 注: これは最終結果です。「+」は「*」に置き換えることができます。 。空の文字列が許容されると思われる場合 (奇妙ですが、なぜですか?) 最後に、関数を使用するときによくあるエラーはここにあります: ^([a- zA-Z]+- ?)+[a-zA-Z0-9]+\.[x|X][m|M][l|L]$

  • 漢字の正規表現: [u4e00-u9fa5 ]

全角文字: [^x00-xff] (漢字を含む、文字列の長さの計算に使用できます (全角文字の長さは 2 としてカウントされ、ASCII 文字は 1 としてカウントされます))

通常空白行 式: ns*r (空白行の削除に使用可能)

HTML タグの正規表現: <(S*?)[^>]*>.*?|< . *? (インターネット上で流通しているバージョンはあまりにも劣悪で、上記のバージョンは部分的にしか機能せず、複雑なネストされたタグにはまだ無力です)

先頭および末尾の空白文字の正規表現: ^s*| s*$ または (^s *)|(s*$) (行頭と行末の空白文字 (スペース、タブ、フォーム フィードなどを含む) を削除するのに使用でき、非常に便利な式です)

Tencent QQ 番号: [1- 9][0-9]{4,} (Tencent QQ 番号は 10000 から始まります)

中国の郵便番号: [1-9]d{5}(?!d) (中国の郵便番号)コードは6桁です)

IPアドレス:d+.d+.d+.d+(IPアドレスを抽出する際に便利です)

以上がこの記事の全内容です、皆様の勉強に少しでもお役に立てれば幸いです。

関連推奨事項:


Regular

expression

ステートメント注釈の手順の詳細

Regular

オブジェクトを使用して正規表現を実装する のB 使用手順の詳細な説明

以上がPHP で最もよく使用される正規表現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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