前端開發中經常使用到的20個正規表示式。

2021-08-14 10:42:26 字數 3221 閱讀 1473

在前端開發中經常使用到的20個正規表示式。

1 . 校驗密碼強度

密碼的強度必須是包含大小寫字母和數字的組合,不能使用特殊字元,長度在8-10之間。

^(?=.*\\d)(?=.*[a-z])(?=.*[a-z]).$ 

2. 校驗中文

字串僅能是中文。

^[\\u4e00-\\u9fa5]$ 

3. 由數字、26個英文本母或下劃線組成的字串

^\\w+$ 

4. 校驗e-mail 位址

同密碼一樣,下面是e-mail位址合規性的正則檢查語句。

[\\w!#$%&

'*+/=?^_`~-]+(?:\\.[\\w!#$%&'

*+/=?^_`~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])? 

5. 校驗身份證號碼

下面是身份證號碼的正則校驗。15 或 18位。

15位:

^[1-9]\\d((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d$ 

18位:

^[1-9]\\d[1-9]\\d((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d([0-9]|x)$ 

6. 校驗日期

「yyyy-mm-dd「 格式的日期校驗,已考慮平閏年。

^(?:(?!0000)[0-9]-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9](?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$ 

7. 校驗金額

金額校驗,精確到2位小數。

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

8. 校驗手機號

下面是國內 13、15、18開頭的手機號正規表示式。(可根據目前國內收集號擴充套件前兩位開頭號碼)

^(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$ 

9. 判斷ie的版本

ie目前還沒被完全取代,很多頁面還是需要做版本相容,下面是ie版本檢查的表示式。

^.*msie [5-8](?:\\.[0-9]+)?(?!.*trident\\/[5-9]\\.0).*$ 

10. 校驗ip-v4位址

ip4 正則語句。

\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.)(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b 

11. 校驗ip-v6位址

ip6 正則語句。

(([0-9a-fa-f]:)[0-9a-fa-f]|([0-9a-fa-f]:):|([0-9a-fa-f]:):[0-9a-fa-f]|([0-9a-fa-f]:)(:[0-9a-fa-f])|([0-9a-fa-f]:)(:[0-9a-fa-f])|([0-9a-fa-f]:)(:[0-9a-fa-f])|([0-9a-fa-f]:)(:[0-9a-fa-f])|[0-9a-fa-f]:((:[0-9a-fa-f]))|:((:[0-9a-fa-f])|:)|fe80:(:[0-9a-fa-f])%[0-9a-za-z]|::(ffff(:0):)((25[0-5]|(2[0-4]|1[0-9])[0-9])\\.)(25[0-5]|(2[0-4]|1[0-9])[0-9])|([0-9a-fa-f]:):((25[0-5]|(2[0-4]|1[0-9])[0-9])\\.)(25[0-5]|(2[0-4]|1[0-9])[0-9])) 

12. 檢查url的字首

應用開發中很多時候需要區分請求是https還是http,通過下面的表示式可以取出乙個url的字首然後再邏輯判斷。

if

(!s.match(/^[a-za-z]+:\\/\\

//)) 

13. 提取url鏈結

下面的這個表示式可以篩選出一段文字中的url。

^(f|ht)(tp|tps):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)? 

14. 檔案路徑及副檔名校驗

驗證windows下檔案路徑和副檔名(下面的例子中為.txt檔案)

^([a-za-z]\\:|\\\\)\\\\([^\\\\]+\\\\)*[^\\/:*?"<>|]+\\.txt(l)?$ 

15. 提取color hex codes

有時需要抽取網頁中的顏色**,可以使用下面的表示式。

^#([a-fa-f0-9]|[a-fa-f0-9])$

16. 提取網頁

假若你想提取網頁中所有資訊,可以利用下面的表示式。

\\< *[img][^\\>]*[src] *= *[\\

"\\']([^\\"

\\'\\ >]*) 

17. 提取頁面超連結

提取html中的超連結。

18. 查詢css屬性

通過下面的表示式,可以搜尋到相匹配的css屬性。

^\\s*[a-za-z\\-]+\\s*[:]\\s[a-za-z0-9\\s.#]+[;] 

19. 抽取注釋

如果你需要移除hmtl中的注釋,可以使用如下的表示式。

20. 匹配html標籤

通過下面的表示式可以匹配出html中的標籤屬性。

<\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:

".*?"

|'.*?'

|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?> 

git中經常使用到的命令

先說說個人對git提交 的流程理解吧 首先檢視本地 狀態,顯示有紅色檔案路徑的話說明這些檔案中默寫地方做了修改,然後add將本地檔案暫存,再status一下如何檔名都是綠色的話說明暫存成功了,然後commit,在status一下,這時候就會看到什麼什麼clean什麼,意思應該是 提交成功了,本地沒有...

ios開發中經常用到xcode使用小技巧

內容比較分散,只說說一點常用的 1 開發中面臨同時開啟多用工程的情況,對於初學的同志們可能有點不習慣,我們可以使用快捷鍵來完成啟動乙個新的工程,shift command n 2 新建資料夾 command n 3 m檔案和.h檔案的快速切換,control command 上 下 4 怎樣快速啟動...

freemarker在專案中經常使用到的語法總結

判斷data.tag不為null if data.tag?判斷data.tag不為null且不為空字串 if data.tag?data.tag 判斷data.is top不為null且等於1 if data.is top?data.is top 1 獲取列表imagelist的長度 多次替換後台返...