よく使用される正規表現のまとめ

零到壹度
リリース: 2018-03-30 15:13:53
オリジナル
1315 人が閲覧しました

この記事では、主によく使用される正規表現の概要を紹介します。これは参考になるものであり、皆さんのお役に立てれば幸いです。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。

記号を使用して記述ルールを説明します: / 途中に正規表現を記述します /

^: 先頭に一致、$: 末尾に一致 /^ve//ve$/ve で始まる/ve で終わる

d: 任意の数値

w: 任意の数値または文字

s: 任意の文字列

{n}: 左側の式を n 回繰り返します

{m,n}: 左側の式を少なくとも繰り返しますm 回、最大で n 回
{m, }: 左側の式を少なくとも m 回、最大で無制限に繰り返します

+: 左側の式は少なくとも 1 回、最大で無制限に出現し、{1 と同等です,}

* : 左の式は少なくとも 0 回出現し、最大で制限なし、{0,}

と同等?: 左の式は少なくとも 0 回、最大 1 回出現、と同等{0, 1}

[ a, b, c]: 角括弧内の内容の 1 つだけを取得できます

[a-z] または [1-9]: 範囲内の内容の 1 つを取得します

|: を表しますor; (): 優先順位; : エスケープ - "( )" は表示される括弧であり、エスケープする必要があります

1. 数値をチェックするための式 1 数値: ^[ 0-9]*$

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

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

4 m-n 桁の数値: ^d{m,n }$

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

6 ゼロ以外で始まる数字およびアップ小数点以下 2 桁まで: ^([1- 9][0-9]*)+(.[0-9]{1,2})?$

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

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

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

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

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

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

13 負でない整数: ^d+$ または ^[1-9]d*|0$

14 正でない整数: ^-[1-9] d* |0$ または ^((-d+)|(0+))$

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

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

17 正の浮動小数点数: ^[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]*) )$

18 負の浮動小数点数: ^-([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]*)))$

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

2. チェック文字の表現

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

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

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

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

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

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

7 数字と 26 文字の英字: ^[A-Za-z0-9]+$

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

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

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

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

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

3. 特殊な表現

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

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

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

4 携帯電話番号: ^(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}$

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

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

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

8 短い ID 番号 (文字 x で終わる数字): ^( [0- 9]){7,18}(x|X)?$ または ^d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$

9 アカウントは合法ですか (文字で始まり、5 ~ 16 バイトが使用可能、英数字のアンダースコアが使用可能): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$

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

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

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

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

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

15 お金の入力形式:

16 1. 許容されるお金の表現は 4 つあります: 「10000.00」と「10,000.00」、および「セント」なしの「10000」と「10,000」: ^[1-9][0-9]*$

17 2これは、0 で始まらない任意の数値を意味します。ただし、文字「0」は通過しないことも意味するため、次の形式を使用します: ^(0|[1-9][0-9 ]*) $

18 3. 0、または 0 で始まらない数値。先頭に負符号を使用することもできます: ^(0|-?[1-9][0-9]*)$

19 4. これは、0 または負の可能性があり、0 で始まらない数値を意味します。ユーザーは 0 から始めます。お金を負にすることはできないため、負の符号も削除します。次の値を追加します。これは、可能な小数を示します。部分: ^[0-9]+(.[0-9]+)?$

20 5. 小数点の後に少なくとも 1 桁が必要なので、「10」であることに注意してください。合格しませんが、「10」と「10.2」は合格します: ^[0-9]+(.[0-9]{2})?$

21 6. このようにして、2 桁でなければならないと規定します。小数点の後が厳しすぎると思われる場合は、次のようにしてください: ^[0-9]+(.[0-9]{1,2})?$

22 7. これにより、ユーザーは次のことが可能になります。小数点以下 1 桁だけを書きます。数値のカンマについて考えてみましょう: ^[0-9]{1,3}(,[0-9]{3})*(.[0- 9]{1,2})?$

23 8.1 ~ 3 の数値、その後に任意の数のカンマ + 3 つの数値が続き、カンマは必須ではなくオプションになります: ^([0-9]+|[0-9] {1,3}(,[ 0-9]{3})*)(.[0-9]{1,2})?$

24 注: これは最終結果です。「」ということを忘れないでください。 +" は、次の場合に "*" に置き換えることができます。空の文字列が許容されると思われる場合 (奇妙ですが、なぜですか?) 最後に、関数を使用するときはバックスラッシュを削除することを忘れないでください。よくある間違いはここにあります

25 xml ファイル: ^( [a-zA-Z ]+-?)+[a-zA-Z0-9]+\.[x|X][m|M][l|L]$

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

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

28 空白行の通常の規則 式: ns*r (空白行の削除に使用できます)

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

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

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

32 中国の郵便番号: [1-9]d{5}(?!d) (中国の郵便番号は 6 桁です) 33 IP アドレス: d+.d+.d+.d+ (IP アドレスを抽出するときに便利です) 34 IP アドレス ( (?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]| 2[ 0-4]\d|[01]?\d?\d))

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

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