[.net 物件導向程式設計進階] (4) 正規表示式 (三) 表示式助手

yubinfeng發表於2015-07-01

[.net 物件導向程式設計進階] (2) 正規表示式(表示式助手 

      上面兩節對正規表示式的使用及.NET下使用正規表示式作了詳細說明,本節主要蒐集整理了常用的正規表示式提供參考。 

      此外為了使用方便,編寫了一個《正規表示式助手》方便測試正規表示式。 

1.正規表示式助手 

1.1 軟體概述

軟體名稱:

《正規表示式助手》

版本:

3.5

最後更新日期:

2015/07/04 09:22:00

作者:

YuBinfeng

執行環境:

.NET Framework 4.0及以上(常用表示式功能,需要聯網,從部落格園本貼中獲取資料)

作者部落格:

http://www.cnblogs.com/yubinfeng/p/4612670.html

技術交流QQ群:

467189533

下載地址:(點選下載)

http://files.cnblogs.com/files/yubinfeng/正規表示式助手3.5.rar

1.2 更新記錄

    2015/07/04 09:22:00   Version 3.5

          修復未聯網時,開啟應用程式出錯的問題。       

    2015/07/01 20:00:00   Version 3.1

          增加輸入框右鍵選單

          增加輸入錯誤表示式,執行後,提示錯誤資訊。

    2015/07/01 14:01:01   Version 2.0

          更新汽車車牌號碼匹配、汽車發動機號匹配、顏色值匹配

          修復常用列表偶爾會出現索引值不存在的BUG。

   

1.3 助手使用說明 

正規表示式助手主要有兩方法的功能: 

A.一是可以執行查詢和替換兩種匹配方式 

B.二是通過聯網(主要是通過部落格園本貼子的更新資料,載入常用的正規表示式,方便貼子和軟體同步) 

1.4 軟體介紹 

1.3.1 主介面 

 

 1.3.2 自動聯接我的部落格同步獲取最新“常用正規表示式” 

 

 1.3.3 點選常用列表,可以將正規表示式加入到除錯視窗 

 

 1.3.4 支援查詢和替換兩種模式,表示式選項支援忽略大小寫、單行模式、多行模式、忽略空白和顯式模式等四種。 

 

 1.3.4 關於軟體更新,當有新版本時開啟軟體會有提示,也可以主動下載新版本 

 

 2.常用正規表示式

常用正規表示式(陸續整理中)

校驗數字類

序號

說明

正規表示式

1

正數字

^[0-9]*$

2

n位的數字

^\d{n}$

3

至少n位的數字

^\d{n,}$

4

m-n位的數字

^\d{m,n}$

5

零和非零開頭的數字

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

6

非零開頭的最多帶兩位小數的數字

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

7

帶1-2位小數的正數或負數

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

8

正數、負數、和小數

^(\-|\+)?\d+(\.\d+)?$

9

有兩位小數的正實數

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

10

有1~3位小數的正實數

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

11

非零的正整數

^[1-9]\d*$

12

非零的負整數

^-[1-9]\d*$

13

非負整數

^\d+$

14

非正整數

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

15

非負浮點數

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

16

非正浮點數

^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 

17

正浮點數

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

18

負浮點數

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

19

浮點數

^(-?\d+)(\.\d+)?$

校驗字元類

1

中文

[\u4e00-\u9fa5]

2

英文和數字

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

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

由數字、字母或者下劃線的字串

^\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]+

特殊需求類

1

Email地址

^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$

2

域名

^(((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?))$

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

電話號碼

^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$

6

驗證身份證號(15位或18位數字)

^\d{15}$|^\d{18}$

7

短身份證號碼(數字、字母x結尾)

^([0-9]){7,18}(x|X)?$

8

帳號是否合法(字母開頭,5-16,母數字下劃線)

^[a-zA-Z][a-zA-Z0-9_]{4,15}$

9

密碼(字母開頭,6~18,只能包含字母、數字和下劃線)

^[a-zA-Z]\w{5,17}$

10

強密碼(含大小寫字母和數字,不含特殊字元,8-10之間)

^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

11

日期格式

^\d{4}-\d{1,2}-\d{1,2}

12

一年的12個月(01~09和1~12)

^(0?[1-9]|1[0-2])$

13

一個月的31天(01~09和1~31)

^((0?[1-9])|((1|2)[0-9])|30|31)$

14

xml檔案

^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$

15

雙位元組字元(含漢字)

[^\x00-\xff]

16

空白行的正規表示式

\n\s*\r

17

HTML標記的正規表示式

<(\S*?)[^>]*>.*?</\1>|<.*? />

18

首尾空白字元的正規表示式

^\s*|\s*$或(^\s*)|(\s*$)

19

騰訊QQ號

[1-9][0-9]{4,}

20

中國郵政編碼

[1-9]\d{5}(?!\d)

15/07/01更新

1

車牌號碼

^[\u4E00-\u9FA5][\da-zA-Z]{6}$

2

汽車發動機序列號

^[a-zA-Z0-9]{16}$

3

MSN號碼

^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$

4

顏色數值校驗(如#FF00FF)

\#[a-fA-F0-9]{6}

5

貨幣校驗

^\d{0,}(\.\d+)?$

常用正規表示式(陸續整理中)

==============================================================================================  

 返回目錄

 <如果對你有幫助,記得點一下推薦哦,如有

有不明白或錯誤之處,請多交流>  

<對本系列文章閱讀有困難的朋友,請先看《.net 物件導向程式設計基礎》>

<轉載宣告:技術需要共享精神,歡迎轉載本部落格中的文章,但請註明版權及URL>

.NET 技術交流群:467189533    .NET 程式設計

==============================================================================================   

相關文章