C# 數據驗證常用正則表達式_字符串

以下是通用數據校驗正則表達式整理,包含常見使用場景的數字類規則、字符串、日期、網絡地址等,方便日常開發使用:

一、數字類校驗(包含你提供的規則)

校驗場景

正則表達式

説明

1. 純數字

^[0-9]$

單個數字(0-9)

2. n位數字

^\d{n}$

固定n位數字(如^\d{3}$匹配3位數字)

3. 至少n位數字

^\d{n,}$

位數≥n(如^\d{2,}$匹配2位及以上數字)

4. m-n位數字

^\d{m,n}$

位數在m到n之間(如^\d{2,4}$匹配2-4位數字)

5. 零或非零開頭的數字

^0|[1-9][0-9]*$

允許“0”或“非0開頭的正整數”

6. 非零開頭、最多兩位小數

^[1-9][0-9]*(\.[0-9]{1,2})?$

整數部分非0開頭,小數部分最多2位(如123、123.4、123.45)

7. 帶1-2位小數的正/負數

^(-?)d+(\.\d{1,2})?$(修正:^(-?)\d+(\.\d{1,2})?$

允許正負整數、正負1-2位小數(如-123、123.4、-123.45)

8. 正/負數、小數

^(-|\+)?d+(\.\d+)?$(修正:`^(-

\+)?\d+(\.\d+)?$`)

9. 兩位小數的正實數

^[0-9]+(\.[0-9]{2})?$

正整數或帶2位小數的正數(如123、123.45)

10. 1-3位小數的正實數

^[0-9]+(\.[0-9]{1,3})?$

正整數或帶1-3位小數的正數(如123、123.4、123.456)

11. 非零正整數

^[1-9]\d*$^[1-9][0-9]*$^\+?[1-9][0-9]*$

非0開頭的正整數(如1、123)

12. 非零負整數

^-[1-9][0-9]*$^-[1-9]\d*$

非0開頭的負整數(如-1、-123)

13. 非負整數

^\d+$^[1-9]\d*|0$

正整數或0(如0、123)

14. 非正整數

^-[1-9]\d*|0$^(-\d+)|(0+)$

負整數或0(如0、-123)

15. 非負浮點數

^\d+(\.\d+)?$^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$

正小數、正整數、0(如0、123、123.45)

16. 非正浮點數

^(-\d+(\.\d+)?)?(0+(\.0+)?)?$^(-[1-9]\d*\.\d*|0\.\d*[1-9]\d*)|0?\.0+|0$

負小數、負整數、0(如0、-123、-123.45)

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]+)

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]+)

19. 浮點數

^(-?\d+)(\.\d+)?$^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*)|0?\.0+|0$

正負整數、正負小數、0(如-123、0、123.45)

二、字符串類校驗

校驗場景

正則表達式

説明

1. 純字母(大小寫)

^[A-Za-z]+$

僅包含英文字母(如abc、ABC)

2. 純中文

^[\u4e00-\u9fa5]+$

僅包含中文字符(如“你好”)

3. 字母+數字

^[A-Za-z0-9]+$

僅包含英文字母和數字(如abc123)

4. 字母+數字+下劃線

^\w+$ (等價於^[A-Za-z0-9_]+$

匹配“單詞字符”(如abc_123)

5. 不包含特殊字符

^[A-Za-z0-9\u4e00-\u9fa5]+$

僅包含字母、數字、中文(無特殊符號)

6. 固定長度字符串

^.{n}$ (如^.{5}$匹配5個任意字符)

長度固定為n的字符串

7. 長度範圍字符串

^.{m,n}$ (如^.{2,5}$匹配2-5個任意字符)

長度在m到n之間的字符串

三、日期/時間類校驗

校驗場景

正則表達式

説明

1. 日期(yyyy-MM-dd)

`^\d{4}-(0[1-9]

1[0-2])-(0[1-9]

2. 日期(yyyy/MM/dd)

`^\d{4}/(0[1-9]

1[0-2])/(0[1-9]

3. 時間(HH:mm:ss)

`^(0[0-9]

1[0-9]

4. 時間(HH:mm)

`^(0[0-9]

1[0-9]

四、網絡/地址類校驗

校驗場景

正則表達式

説明

1. 郵箱地址

^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$

標準郵箱格式(如test@example.com)

2. 手機號(國內)

^1[3-9]\d{9}$

國內11位手機號(如13800138000)

3. IP地址(IPv4)

`^((25[0-5]

2[0-4]\d

4. URL(網址)

^(http|https):\/\/([\w-]+\.)+[\w-]+(\/[\w-./?%&=]*)?$

以http/https開頭的網址(如https://www.example.com)

五、注意事項

  1. 正則表達式中的特殊符號(如|()需根據語言轉義(如C#中需用\\代替\);
  2. 部分規則(如日期)僅做格式校驗,如需精準合法性(如2月30日)需結合業務代碼;
  3. 使用時可根據實際場景調整規則(如手機號可補充國際號碼格式)。