前端開發中經常使用到的20個正規表示式。
校驗密碼強度
密碼的強度必須是包含大小寫字母和數字的組合,不能使用特殊字元,長度在8-10之間。
^(?=.*\\d)(?=.*[a-z])(?=.*[a-z]).$複製**
校驗中文
字串僅能是中文。
^[\\u4e00-\\u9fa5]$
由數字、26個英文本母或下劃線組成的字串
^\\w+$
校驗e-mail 位址
同密碼一樣,下面是e-mail位址合規性的正則檢查語句。
[\\w!#$%&'*+/=?^_`~-]+(?:\\.[\\w!#$%&'*+/=?^_`~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?
校驗身份證號碼
下面是身份證號碼的正則校驗。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)$
校驗日期
「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)$
校驗金額
金額校驗,精確到2位小數。
^[0-9]+(.[0-9])?$
校驗手機號
下面是國內 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$
判斷ie的版本
ie目前還沒被完全取代,很多頁面還是需要做版本相容,下面是ie版本檢查的表示式。
^.*msie [5-8](?:\\.[0-9]+)?(?!.*trident\\/[5-9]\\.0).*$
校驗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
校驗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]))
檢查url的字首
應用開發中很多時候需要區分請求是https還是http,通過下面的表示式可以取出乙個url的字首然後再邏輯判斷。
if (!s.match(/^[a-za-z]+:\\/\\//))
提取url鏈結
下面的這個表示式可以篩選出一段文字中的url。
^(f|ht)(tp|tps):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)?
檔案路徑及副檔名校驗
驗證windows下檔案路徑和副檔名(下面的例子中為.txt檔案)
^([a-za-z]\\:|\\\\)\\\\([^\\\\]+\\\\)*[^\\/:*?"<>|]+\\.txt(l)?$
提取color hex codes
有時需要抽取網頁中的顏色**,可以使用下面的表示式。
^#([a-fa-f0-9]|[a-fa-f0-9])$
提取網頁
假若你想提取網頁中所有資訊,可以利用下面的表示式。
\\< *[img][^\\>]*[src] *= *[\\"\\']([^\\"\\'\\ >]*)
提取頁面超連結
提取html中的超連結。
查詢css屬性
通過下面的表示式,可以搜尋到相匹配的css屬性。
^\\s*[a-za-z\\-]+\\s*[:]\\s[a-za-z0-9\\s.#]+[;]
抽取注釋
如果你需要移除hmtl中的注釋,可以使用如下的表示式。
匹配html標籤
通過下面的表示式可以匹配出html中的標籤屬性。
<\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:".*?"|'.*?'|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?>
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 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 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 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 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...