20種匹配正則

2021-07-23 20:41:27 字數 3129 閱讀 9119

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的字首然後再邏輯判斷。

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*)\/?>

Django2 0 正則表示匹配的簡單例子

在django中,使用正規表示式,匹配url 預設情況下,url固定格式如下 urlpatterns path admin admin.site.urls 如果需要使用正規表示式匹配url,先需要引入djangourl包 from django.conf.urls import url然後再將需要使...

js 正則匹配

isnumber 是否為數字 regexps.isnumber d d isint 是否為整形 regexps.isint d istime 是否為時間格式 regexps.istime d d d s d d d isdate 是否為日期格式 regexps.isdate d d d isemai...

perl正則匹配

字元的種類是一定的,無非是空格,數字,大小寫字母,和perl中定義的元字元,還有本國語言。所以原則上任何格式的字元都能匹配。匹配工具 選擇符號,關鍵字,量詞,斷言,轉義字元 當出現多個字元組成的 非空格字元時候,例如123,45 3 s sdgg 則使用 0 9a za z 若加上 則只能匹配一行中...