每天分享職場生活、職場攻略、領導同事相處技巧和創業資源
作為一名軟件開發人員,如果能彙總一些常用工具類,對我們平時的開發效率是有很大的幫助。這樣我們能抽出更多的時間,研究新技術,升職加薪不再遙遠。
更重要的是,還沒有對象,我們有更多的時間找對象,有對象的,我們有更多的時間陪另一半,這樣美好的愛情指日可待。生活沒必要那麼苟且,也應有詩和遠方。
今天整理一些日常常用的正則表達式,希望對你學習有幫助。
數字的正則表達式
數字:^[0-9]*$
n位的數字:^\d{n}$
至少n位的數字:^\d{n,}$
m-n位的數字:^\d{m,n}$
零和非零開頭的數字:^(0|[1-9][0-9]*)$
非零開頭的最多帶兩位小數的數字:^([1-9][0-9]*)+(.[0-9]{1,2})?$
帶1-2位小數的正數或負數:^(\-)?\d+(\.\d{1,2})?$
正數、負數、和小數:^(\-|\+)?\d+(\.\d+)?$
字符的正則表達式
漢字:^[\\u4e00-\\u9fa5]{0,}$
英文和數字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$
長度為3-20的所有字符:^.{3,20}$
由26個英文字母組成的字符串:^[A-Za-z]+$
由26個大寫英文字母組成的字符串:^[A-Z]+$
由26個小寫英文字母組成的字符串:^[a-z]+$
由數字和26個英文字母組成的字符串:^[A-Za-z0-9]+$
由數字、26個英文字母或者下劃線組成的字符串:^\w+$ 或 ^\w{3,20}$
中文、英文、數字包括下劃線:^[\\u4E00-\\u9FA5A-Za-z0-9_]+$
中文、英文、數字但不包括下劃線等符號:^[\\u4E00-\\u9FA5A-Za-z0-9]+$ 或 ^[\\u4E00-\\u9FA5A-Za-z0-9]{2,20}$
禁止輸入含有~的字符:[^~\\x22]+
特殊需求正則表達式
Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?
URL:[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{8}$
身份證號:
15或18位身份證:^\d{15}|\d{18}$
15位身份證:^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$
18位身份證:^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$
短身份證號碼(數字、字母x結尾):^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$
帳號是否合法(字母開頭,允許5-16字節,允許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
密碼(以字母開頭,長度在6~18之間,只能包含字母、數字和下劃線):^[a-zA-Z]\w{5,17}$
強密碼(必須包含大小寫字母和數字的組合,不能使用特殊字符,長度在8-10之間):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
日期格式:^\d{4}-\d{1,2}-\d{1,2}
IP地址:\d+\.\d+\.\d+\.\d+
中文字符的正則表達式:[\\u4e00-\\u9fa5]
小結:
密碼設置時,如果需要對密碼的複雜性進行設置,比如常見的只能包含字母、數字和下劃線,我們一個正則表達式就可以搞定了。
掌握了這些正則表達式,除了對我們開發有幫助,還能幫我們快速查找到信息。比如在Android Studio 開發工具中,我們想查看項目用到了那些IP,我們可以Ctrl+H 查找,輸入\d+\.\d+\.\d+\.\d+ ,確定,這樣就可以匹配到整個項目的IP,不會錯漏了。
[END]
閱讀更多 洪生鵬 的文章