正則表達式
正則表達式,又稱規則表達式。(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),計算機科學的一個概念。
一個十分古老而又強大的文本處理工具,僅僅用一段非常簡短的表達式語句,便能夠快速實現一個非常複雜的業務邏輯。
正則表達式的特點是:
1. 靈活性、邏輯性和功能性非常強;
2. 可以迅速地用極簡單的方式達到字符串的複雜控制。
3. 對於剛接觸的人來説,比較晦澀難懂。
由於正則表達式主要應用對象是文本,因此它在各種文本編輯器場合都有應用,小到著名編輯器EditPlus,大到Microsoft Word、Visual Studio等大型編輯器,都可以使用正則表達式來處理文本內容。
因此,正則表達式通常是一個成熟開發人員的標配,可以輔助實現開發效率的極強提升。
下面是技匠整理的,經常使用到的20個正則表達式。
1、校驗密碼強度
密碼的強度必須是包含大小寫字母和數字的組合,不能使用特殊字符,長度在8-10之間。
2、校驗中文
字符串僅能是中文。
3、由數字、26個英文字母或下劃線組成的字符串
4、校驗E-Mail 地址
同密碼一樣,下面是E-mail地址合規性的正則檢查語句。
5、校驗身份證號碼
下面是身份證號碼的正則校驗。15 或 18位。
6、校驗日期
“yyyy-mm-dd“ 格式的日期校驗,已考慮平閏年。
7、校驗金額
金額校驗,精確到2位小數。
8、校驗手機號
下面是國內 13、15、18開頭的手機號正則表達式。(可根據目前國內收集號擴展前兩位開頭號碼)
9、判斷IE的版本
IE目前還沒被完全取代,很多頁面還是需要做版本兼容,下面是IE版本檢查的表達式。
10、校驗IP-v4地址
IP4 正則語句。
11、校驗IP-v6地址
IP6 正則語句。
12、檢查URL的前綴
應用開發中很多時候需要區分請求是HTTPS還是HTTP,通過下面的表達式可以取出一個url的前綴然後再邏輯判斷。
13、提取URL鏈接
下面的這個表達式可以篩選出一段文本中的URL。
14、文件路徑及擴展名校驗
驗證windows下文件路徑和擴展名(下面的例子中為.txt文件)
15、提取Color Hex Codes
有時需要抽取網頁中的顏色代碼,可以使用下面的表達式。
16、提取網頁圖片
假若你想提取網頁中所有圖片信息,可以利用下面的表達式。
17、提取頁面超鏈接
提取html中的超鏈接。
18、查找CSS屬性
通過下面的表達式,可以搜索到相匹配的CSS屬性。
19、抽取註釋
如果你需要移除HMTL中的註釋,可以使用如下的表達式。
20、匹配HTML標籤
通過下面的表達式可以匹配出HTML中的標籤屬性。
正則表達式的相關語法
下面是我找到的一張非常不錯的正則表達式 Cheat Sheet,可以用來快速查找相關語法。