ホームページ  >  記事  >  php教程  >  最も包括的で一般的に使用される正規表現

最も包括的で一般的に使用される正規表現

大家讲道理
大家讲道理オリジナル
2016-11-10 10:06:271582ブラウズ

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 数値ではない0 で始まり小数点以下 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-XXXXXX"、"XXX-XXXXXXXX") "XXXXXXX" および "XXXXXXX"): ^((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 桁でなければならないと規定していますが、厳しすぎると思われる場合は、次のようにすることもできます。 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 Double-バイト文字: [^x00-xff] (漢字を含む、文字列の長さの計算に使用できます (全角文字の長さは 2 としてカウントされ、ASCII 文字の長さは 1 としてカウントされます)) 28 の正規表現空白行: ns*r (空白行の削除に使用可能)

29 HTML タグの正規表現: ]*>.*?1>|<.> (インターネット上で流通しているバージョンはあまりにもひどいものです。上記のバージョンは部分的にのみ効果があり、複雑なネストされたタグには依然として無力です。) 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))

"^d+$" //非負integer ( 正の整数 + 0)
"^[0-9]*[1-9][0-9]*$" //正の整数
"^((-d+)|(0+))$" / /非正の整数 (負の整数 + 0)
"^-[0-9]*[1-9][0-9]*$" //負の整数
"^-?d+$" //整数
" ^d+ (.d+)?$" //非負の浮動小数点数 (正の浮動小数点数 + 0)
"^(([0-9]+.[0-9]*[1-9][0 -9]*) |([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9] *))$" //正の浮動小数点数
"^((-d+(.d+)?)|(0+(.0+)?))$" //非正の浮動小数点数 (負の浮動小数点数)数値 + 0)
"^(- (([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][ 0-9]*.[0- 9]+)|([0-9]*[1-9][0-9]*)))$" //負の浮動小数点数
"^(-?d+ )(.d+)?$" // 浮動小数点数
"^[A-Za-z]+$" //26 個の英字で構成される文字列
"^[A-Z]+$" //以下で構成される文字列26 個の英大文字
" ^[a-z]+$" //26 個の英小文字からなる文字列
"^[A-Za-z0-9]+$" // 数字と 26 個の英字から成る文字列
" ^w+$" //数字、26 個の英字、またはアンダースコアで構成される文字列
"^[w-]+(.[w-]+)*@[w-]+(.[w-]+) + $" //メールアドレス
"^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$" / / URL

整数または小数: ^[0-9]+.{0,1}[0-9]{0,2}$
数値のみを入力できます: "^[0-9]*$"。
n 桁の数字のみ入力できます:「^d{n}$」。
少なくとも n 桁の数字「^d{n,}$」のみを入力できます。
m~n 桁のみを入力できます:。 「^d{m,n}$」
ゼロで始まる数字とゼロ以外の数字のみを入力できます: 「^(0|[1-9][0-9]*)$」。
小数点以下 2 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{2})?$"。
小数点以下 1 ~ 3 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{1,3})?$"。
ゼロ以外の正の整数のみを入力できます: "^+?[1-9][0-9]*$"。
ゼロ以外の負の整数のみを入力できます: "^-[1-9][]0-9"*$。
長さ 3 の文字のみ入力できます:「^.{3}$」。
入力できるのは、26 文字の英字で構成される文字列「^[A-Za-z]+$」のみです。
26 文字の大文字の英字で構成される文字列「^[A-Z]+$」のみを入力できます。
26 文字の小文字の英字で構成される文字列「^[a-z]+$」のみを入力できます。
入力できる文字列は、数字と 26 文字の英字「^[A-Za-z0-9]+$」のみです。
入力できるのは、数字、26 文字の英字、またはアンダースコアで構成される文字列「^w+$」のみです。
ユーザーパスワードを確認してください: "^[a-zA-Z]w{5,17}$" 正しい形式は次のとおりです: 文字で始まり、長さは 6 ~ 18 で、文字、数字、アンダースコアのみを含めることができます。
^%&'',;=?$": "[^%&'',;=?$x22]+" などの文字が含まれているかどうかを確認します。
中国語の文字のみを入力できます: "^[u4e00- u9fa5]{0 ,}$"
メール アドレスを確認します: "^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$"。
確認するインターネット URL: "^ http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$"。 確認用電話番号: "^((d{3,4}-)|d{3.4}-)?d{7,8}$" 正しい形式は次のとおりです: "XXX-XXXXXXX"、"XXXX-XXXXXXXX"、" XXX -XXXXXXX」、「XXX-XXXXXXXX」、「XXXXXXX」、および「XXXXXXXX」。
ID 番号 (15 桁または 18 桁) を確認します: 「^d{15}|d{18}$」。
1 年の 12 か月を確認します: "^(0?[1-9]|1[0-2])$" 正しい形式は、"01"~"09" および "1"~"12" です。
月の 31 日を確認します: "^((0?[1-9])|((1|2)[0-9])|30|31)$" 正しい形式は "01"~です。 「09」と「1」~「31」。整数または小数: ^[0-9]+.{0,1}[0-9]{0,2}$
数値のみを入力できます: "^[0-9]*$"。
n 桁の数字のみ入力できます:「^d{n}$」。
少なくとも n 桁の数値「^d{n,}$」のみを入力できます。
m~n 桁のみを入力できます:。 「^d{m,n}$」
ゼロで始まる数字とゼロ以外の数字のみを入力できます: 「^(0|[1-9][0-9]*)$」。
小数点以下 2 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{2})?$"。
小数点以下 1 ~ 3 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{1,3})?$"。
ゼロ以外の正の整数のみを入力できます: "^+?[1-9][0-9]*$"。
ゼロ以外の負の整数のみを入力できます: "^-[1-9][]0-9"*$。
長さ 3 の文字のみ入力できます:「^.{3}$」。
入力できるのは、26 文字の英字で構成される文字列「^[A-Za-z]+$」のみです。
26 文字の大文字の英字で構成される文字列「^[A-Z]+$」のみを入力できます。
26 文字の小文字の英字で構成される文字列「^[a-z]+$」のみを入力できます。
入力できる文字列は、数字と 26 文字の英字「^[A-Za-z0-9]+$」のみです。
入力できるのは、数字、26 文字の英字、またはアンダースコアで構成される文字列「^w+$」のみです。
ユーザーパスワードを確認してください: "^[a-zA-Z]w{5,17}$" 正しい形式は次のとおりです: 文字で始まり、長さは 6 ~ 18 で、文字、数字、アンダースコアのみを含めることができます。
^%&'',;=?$": "[^%&'',;=?$x22]+" などの文字が含まれているかどうかを確認します。
中国語の文字のみを入力できます: "^[u4e00- u9fa5]{0 ,}$"
メール アドレスを確認します: "^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$"。
確認するインターネット URL: "^ http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$"。 確認用電話番号: "^((d{3,4}-)|d{3.4}-)?d{7,8}$" 正しい形式は次のとおりです: "XXX-XXXXXXX"、"XXXX-XXXXXXXX"、" XXX -XXXXXXX」、「XXX-XXXXXXXX」、「XXXXXXX」、および「XXXXXXXX」。
ID 番号 (15 桁または 18 桁) を確認します: 「^d{15}|d{18}$」。
1 年の 12 か月を確認します: "^(0?[1-9]|1[0-2])$" 正しい形式は、"01"~"09" および "1"~"12" です。
月の 31 日を確認します: "^((0?[1-9])|((1|2)[0-9])|30|31)$" 正しい形式は "01"~です。 「09」と「1」~「31」。
"^d+$" //非負の整数 (正の整数 + 0)
"^[0-9]*[1-9][0-9]*$" //正の整数
"^((- d+ )|(0+))$" //非正の整数 (負の整数 + 0)
"^-[0-9]*[1-9][0-9]*$" //負の整数
"^ -?d+$" //整数
"^d+(.d+)?$" //非負の浮動小数点数 (正の浮動小数点数 + 0)
"^(([0-9]+.[ 0-9]* [1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9] ]*[1- 9][0-9]*))$" //正の浮動小数点数
"^((-d+(.d+)?)|(0+(.0+)?))$" //非正の浮動小数点数 (負の浮動小数点数 + 0)
"^(-(([0-9]+.[0-9]*[1-9][0-9]*)|( [0-9]*[1- 9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$" / /負の浮動小数点数
"^(- ?d+)(.d+)?$" //浮動小数点数
"^[A-Za-z]+$" //26 個の英字で構成される文字列
"^ [A-Z]+$" //26 文字の大文字の英字の文字列
"^[a-z]+$" //26 文字の小文字の英文字の文字列
"^[A-Za-z0-9]+$" //数字と 26 文字の英字で構成される文字列
"^w+$" //数字、26 文字の英字、またはアンダースコアで構成される文字列
" ^[w- ]+(.[w-]+)*@[w-]+(.[w-]+)+$" //メールアドレス
"^[a-zA-z]+:// (w+(- w+)*)(.(w+(-w+)*))*(?S*)?$" //url

整数または小数: ^[0-9]+.{0,1}[0-9]{0,2}$
数値のみを入力できます: "^[0-9]*$"。
n 桁の数字のみ入力できます:「^d{n}$」。
少なくとも n 桁の数値「^d{n,}$」のみを入力できます。
m~n 桁のみを入力できます:。 「^d{m,n}$」
ゼロで始まる数字とゼロ以外の数字のみを入力できます: 「^(0|[1-9][0-9]*)$」。
小数点以下 2 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{2})?$"。
小数点以下 1 ~ 3 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{1,3})?$"。
ゼロ以外の正の整数のみを入力できます: "^+?[1-9][0-9]*$"。
ゼロ以外の負の整数のみを入力できます: "^-[1-9][]0-9"*$。
長さ 3 の文字のみ入力できます:「^.{3}$」。
入力できるのは、26 文字の英字で構成される文字列「^[A-Za-z]+$」のみです。
26 文字の大文字の英字で構成される文字列「^[A-Z]+$」のみを入力できます。
26 文字の小文字の英字で構成される文字列「^[a-z]+$」のみを入力できます。
入力できる文字列は、数字と 26 文字の英字「^[A-Za-z0-9]+$」のみです。
入力できるのは、数字、26 文字の英字、またはアンダースコアで構成される文字列「^w+$」のみです。
ユーザーパスワードを確認してください: "^[a-zA-Z]w{5,17}$" 正しい形式は次のとおりです: 文字で始まり、長さは 6 ~ 18 で、文字、数字、アンダースコアのみを含めることができます。
^%&'',;=?$": "[^%&'',;=?$x22]+" などの文字が含まれているかどうかを確認します。
中国語の文字のみを入力できます: "^[u4e00- u9fa5]{0 ,}$"
メール アドレスを確認します: "^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$"。
確認するインターネット URL: "^ http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$"。 確認用電話番号: "^((d{3,4}-)|d{3.4}-)?d{7,8}$" 正しい形式は次のとおりです: "XXX-XXXXXXX"、"XXXX-XXXXXXXX"、" XXX -XXXXXXX」、「XXX-XXXXXXXX」、「XXXXXXX」、および「XXXXXXXX」。
ID 番号 (15 桁または 18 桁) を確認します: 「^d{15}|d{18}$」。
1 年の 12 か月を確認します: "^(0?[1-9]|1[0-2])$" 正しい形式は、"01"~"09" および "1"~"12" です。
月の 31 日を確認します: "^((0?[1-9])|((1|2)[0-9])|30|31)$" 正しい形式は "01"~です。 「09」と「1」~「31」。整数または小数: ^[0-9]+.{0,1}[0-9]{0,2}$
数値のみを入力できます: "^[0-9]*$"。
n 桁の数字のみ入力できます:「^d{n}$」。
少なくとも n 桁の数値「^d{n,}$」のみを入力できます。
m~n 桁のみを入力できます:。 「^d{m,n}$」
ゼロで始まる数字とゼロ以外の数字のみを入力できます: 「^(0|[1-9][0-9]*)$」。
小数点以下 2 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{2})?$"。
小数点以下 1 ~ 3 桁の正の実数のみを入力できます: "^[0-9]+(.[0-9]{1,3})?$"。
ゼロ以外の正の整数のみを入力できます: "^+?[1-9][0-9]*$"。
ゼロ以外の負の整数のみを入力できます: "^-[1-9][]0-9"*$。
長さ 3 の文字のみ入力できます:「^.{3}$」。
入力できるのは、26 文字の英字で構成される文字列「^[A-Za-z]+$」のみです。
26 文字の大文字の英字で構成される文字列「^[A-Z]+$」のみを入力できます。
26 文字の小文字の英字で構成される文字列「^[a-z]+$」のみを入力できます。
入力できる文字列は、数字と 26 文字の英字「^[A-Za-z0-9]+$」のみです。
入力できるのは、数字、26 文字の英字、またはアンダースコアで構成される文字列「^w+$」のみです。
ユーザーパスワードを確認してください: "^[a-zA-Z]w{5,17}$" 正しい形式は次のとおりです: 文字で始まり、長さは 6 ~ 18 で、文字、数字、アンダースコアのみを含めることができます。
^%&'',;=?$": "[^%&'',;=?$x22]+" などの文字が含まれているかどうかを確認します。
中国語の文字のみを入力できます: "^[u4e00- u9fa5]{0 ,}$"
メール アドレスを確認します: "^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$"。
確認するインターネット URL: "^ http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$"。 確認用電話番号: "^((d{3,4}-)|d{3.4}-)?d{7,8}$" 正しい形式は次のとおりです: "XXX-XXXXXXX"、"XXXX-XXXXXXXX"、" XXX -XXXXXXX」、「XXX-XXXXXXXX」、「XXXXXXX」、および「XXXXXXXX」。
ID 番号 (15 桁または 18 桁) を確認します: 「^d{15}|d{18}$」。
1 年の 12 か月を確認します: "^(0?[1-9]|1[0-2])$" 正しい形式は、"01"~"09" および "1"~"12" です。
月の 31 日を確認します: "^((0?[1-9])|((1|2)[0-9])|30|31)$" 正しい形式は "01"~です。 「09」と「1」~「31」。
"^d+$" //非負の整数 (正の整数 + 0)
"^[0-9]*[1-9][0-9]*$" //正の整数
"^((- d+ )|(0+))$" //非正の整数 (負の整数 + 0)
"^-[0-9]*[1-9][0-9]*$" //負の整数
"^ -?d+$" //整数
"^d+(.d+)?$" //非負の浮動小数点数 (正の浮動小数点数 + 0)
"^(([0-9]+.[ 0-9]* [1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9] ]*[1- 9][0-9]*))$" //正の浮動小数点数
"^((-d+(.d+)?)|(0+(.0+)?))$" //非正の浮動小数点数 (負の浮動小数点数 + 0)
"^(-(([0-9]+.[0-9]*[1-9][0-9]*)|( [0-9]*[1- 9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$" / /負の浮動小数点数
"^(- ?d+)(.d+)?$" //浮動小数点数
"^[A-Za-z]+$" //26 個の英字で構成される文字列
"^ [A-Z]+$" //26 文字の大文字の英字の文字列
"^[a-z]+$" //26 文字の小文字の英文字の文字列
"^[A-Za-z0-9]+$" //数字と 26 文字の英字で構成される文字列
"^w+$" //数字、26 文字の英字、またはアンダースコアで構成される文字列
" ^[w- ]+(.[w-]+)*@[w-]+(.[w-]+)+$" //メールアドレス
"^[a-zA-z]+:// (w+(- w+)*)(.(w+(-w+)*))*(?S*)?$" //url

整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 
只能输入数字:"^[0-9]*$"。 
只能输入n位的数字:"^\d{n}$"。 
只能输入至少n位的数字:"^\d{n,}$"。 
只能输入m~n位的数字:。"^\d{m,n}$" 
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。 
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。 
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。 
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。 
只能输入非零的负整数:"^\-[1-9][]0-9"*$。 
只能输入长度为3的字符:"^.{3}$"。 
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。 
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。 
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。 
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。 
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。 
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。 
验证是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。 
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$" 
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。 
验证InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。 
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。 
验证身份证号(15位或18位数字):"^\d{15}|\d{18}$"。 
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。 
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 
只能输入数字:"^[0-9]*$"。 
只能输入n位的数字:"^\d{n}$"。 
只能输入至少n位的数字:"^\d{n,}$"。 
只能输入m~n位的数字:。"^\d{m,n}$" 
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。 
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。 
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。 
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。 
只能输入非零的负整数:"^\-[1-9][]0-9"*$。 
只能输入长度为3的字符:"^.{3}$"。 
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。 
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。 
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。 
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。 
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。 
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。 
验证是否含有^%&'',;=?$\"等字符:"[^%&'',;=?$\x22]+"。 
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$" 
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。 
验证InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。 
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。 
验证身份证号(15位或18位数字):"^\d{15}|\d{18}$"。 
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。 
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。 
可输入形如2008、2008-9、2008-09、2008-9-9、2008-09-09.    ^(\d{4}|(\d{4}-\d{1,2})|(\d{4}-\d{1,2}-\d{1,2}))$ 
邮箱验证正则表达式   \w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 
System.Text.RegularExpressions.Match m = System.Text.RegularExpressions.Regex.Match(s, @"您的IP:(?[0-9\.]*)");
一.网络验证应用技巧

1. 验证 E-mail格式

public bool IsEmail(string str_Email)
   {
        return System.Text.RegularExpressions.Regex.IsMatch(str_Email,@"^([\w-\.]+)@((
[−9]1,3\.[−9]1,3\.[−9]1,3\.)|(([\w−]+\.)+))([a−zA−Z]2,4|[−9]1,3)(
?)$");
   }

2. 验证 IP 地址

      public bool IPCheck(string IP)
      {
          string num = "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)";
          return Regex.IsMatch(IP,("^" + num + "\\." + num + "\\." + num + "\\." + num + "$"));
       }

3. 验证 URL

     public bool IsUrl(string str_url)
     {
        return System.Text.RegularExpressions.Regex.IsMatch(str_url, @"http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?");
     }

 二.  常用数字验证技巧

1. 验证电话号码

   public bool IsTelephone(string str_telephone)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_telephone, @"^(\d{3,4}-)?\d{6,8}$");
    }

2. 输入密码条件(字符与数据同时出现)

   public bool IsPassword(string str_password)
    {          
        return System.Text.RegularExpressions.Regex.IsMatch(str_password, @"[A-Za-z]+[0-9]");
    }

3. 邮政编号

   public bool IsPostalcode(string str_postalcode)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_postalcode, @"^\d{6}$");
    }

4. 手机号码

    public bool IsHandset(string str_handset)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_handset, @"^[1]+[3,5]+\d{9}$");
    }

5. 身份证号

    public bool IsIDcard(string str_idcard)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_idcard, @"(^\d{18}$)|(^\d{15}$)");
    }

6. 两位小数

    public bool IsDecimal(string str_decimal)
    {
            return System.Text.RegularExpressions.Regex.IsMatch(str_decimal, @"^[0-9]+(.[0-9]{2})?$");
    }

7. 一年的12个月

    public bool IsMonth(string str_Month)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_Month, @"^(0?[[1-9]|1[0-2])$");
    }

8. 一个月的31天

    public bool IsDay(string str_day)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_day, @"^((0?[1-9])|((1|2)[0-9])|30|31)$");
    }

9. 数字输入

    public bool IsNumber(string str_number)
     {
        return System.Text.RegularExpressions.Regex.IsMatch(str_number, @"^[0-9]*$");
     }

10. 密码长度 (6-18位)

    public bool IsPasswLength(string str_Length)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_Length, @"^\d{6,18}$");
    }

11. 非零的正整数

    public bool IsIntNumber(string str_intNumber)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_intNumber, @"^\+?[1-9][0-9]*$");
    }

三. 常用字符验证技巧

1. 大写字母

    public bool IsUpChar(string str_UpChar)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_UpChar, @"^[A-Z]+$");
    }

2. 小写字母

    public bool IsLowChar(string str_UpChar)
    {
        return System.Text.RegularExpressions.Regex.IsMatch(str_UpChar, @"^[a-z]+$");
    }

3. 检查字符串重复出现的词

     private void btnWord_Click(object sender, EventArgs e)
     {
            System.Text.RegularExpressions.MatchCollection matches =
 System.Text.RegularExpressions.Regex.Matches(label1.Text, 
@"\b(?<word>\w+)\s+(\k<word>)\b", 
System.Text.RegularExpressions.RegexOptions.Compiled |          
System.Text.RegularExpressions.RegexOptions.IgnoreCase);
            if (matches.Count != 0)
            {
                foreach (System.Text.RegularExpressions.Match match in matches)
                {
                    string word = match.Groups["word"].Value;
                    MessageBox.Show(word.ToString(),"英文单词");
                }
            }
            else { MessageBox.Show("没有重复的单词"); }
        }

4. 替换字符串

   private void button1_Click(object sender, EventArgs e)
   {           
        string strResult = System.Text.RegularExpressions.Regex.Replace(textBox1.Text, @"[A-Za-z]\*?", textBox2.Text);
        MessageBox.Show("替换前字符:" + "\n" + textBox1.Text + "\n" + 
"替换的字符:" + "\n" + textBox2.Text + "\n" +  "替换后的字符:" + "\n" + 
strResult,"替换");    }

5. 拆分字符串

  private void button1_Click(object sender, EventArgs e)
   {
        //实例: 甲025-8343243乙0755-2228382丙029-32983298389289328932893289丁
        foreach (string s in System.Text.RegularExpressions.Regex.Split(textBox1.Text,@"\d{3,4}-\d*"))
        {
            textBox2.Text+=s; //依次输出 "甲乙丙丁"
        }
    }

6. 验证输入字母

   public bool IsLetter(string str_Letter)
   {
        return System.Text.RegularExpressions.Regex.IsMatch(str_Letter, @"^[A-Za-z]+$");
   }

7. 验证输入汉字

   public bool IsChinese(string str_chinese)
   {
        return System.Text.RegularExpressions.Regex.IsMatch(str_chinese, @"^[\u4e00-\u9fa5],{0,}$");
   }

8. 验证输入字符串 (至少8个字符)

  public bool IsLength(string str_Length)
  {
        return System.Text.RegularExpressions.Regex.IsMatch(str_Length, @"^.{8,}$");
  }


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