常用正則記錄

2021-10-02 16:03:08 字數 1070 閱讀 8012

身份證號、手機號和郵箱等常用正則在安全測試中也經常會用到,網上各種版本都有而且不准,下面就自己整理下適用於各類安全工具的正則

身份證號碼排列順序從左至右依次為六位數字位址碼、八位數字出生日期碼、三位數字順序碼和一位數字校驗碼。

當然像最後一位校驗碼,是只有有限種可能,但因為是用於安全工具,不需要那麼複雜,相對準確不要誤報很多就行:

八位數字出生日期碼:(18|19|2\d)\d((0[1-9])|10|11|12)([0-2][1-9]|[1-3]0|31)三位數字順序碼:\d一位數字校驗碼:[\dxx]

以上連起來就是:[1-6]\d(18|19|2\d)\d((0[1-9])|10|11|12)([0-2][1-9]|[1-3]0|31)\d[\dxx]

手機號比較特殊,因為是會根據運營商不斷更新的,如果想要保障嚴謹的規範性,就無法保證時效性,目前用的比較寬鬆的正則匹配:

[1]([3-9])[0-9]

也可以採取嚴格的:

[1](([3][0-9])|([4][5-9])|([5][0-3,5-9])|([6][5,6])|([7][0-8])|([8][0-9])|([9][1,8,9]))[0-9]

(([a-za-z0-9_\-\.])+@([a-za-z0-9_\-\.])+\.([a-za-z]))

a 類:10(\.(([1-9]?|1[0-9])[0-9]|2([0-4][0-9]|5[0-5])))

b 類:127\.(1[6-9]|2[0-9]|3[01])(\.(([1-9]?|1[0-9])[0-9]|2([0-4][0-9]|5[0-5])))

c 類:192\.168(\.(([1-9]?|1[0-9])[0-9]|2([0-4][0-9]|5[0-5])))

回環:127(\.(([1-9]?|1[0-9])[0-9]|2([0-4][0-9]|5[0-5])))

常用正則 學習記錄

關於日期的 3 種正規表示式 關於金額 18.2 正常幣別 regex 1 9 d 0 0 關於金額 18.2 日元校驗 regex 1 9 d 0 d 1.驗證email email位址,格式 zhangsan zuidaima.com,zhangsan com.cn w w a z a z 2....

常用正規表示式記錄

一 校驗數字的表示式 1 數字 0 9 2 n位的數字 d 3 至少n位的數字 d 4 m n位的數字 d 5 零和非零開頭的數字 0 1 9 0 9 6 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7 帶1 2位小數的正數或負數 d d 8 正數 負數 和小數 d d 9 有兩位小數的...

正規表示式常用記錄

匹配前面的子表示式零次或多次。例如,zo 能匹配 z 以及 zoo 等價於。匹配前面的子表示式一次或多次。例如,zo 能匹配 zo 以及 zoo 但不能匹配 z 等價於 匹配前面的子表示式零次或一次。例如,do es 可以匹配 do 或 does 中的 does 或 doxy 中的 do 等價於 r...