建議收藏:常用正則表達式公式總結!平時用到的基本都在這裡

2021-02-19 C語言編程學習基地


一、校驗數字的表達式

數字:

^[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+)?$

有兩位小數的正實數:

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

有1~3位小數的正實數:

^[0-9]+(.[0-9]{1,3})?$

非零的正整數:

^[1-9]d*$ 或 ^([1-9][0-9]*){1,3}$ 或 ^+?[1-9][0-9]*$

非零的負整數:

^-[1-9][]0-9"*$ 或 ^-[1-9]d*$

非負整數:

^d+$ 或 ^[1-9]d*|0$

非正整數:

^-[1-9]d*|0$ 或 ^((-d+)|(0+))$

非負浮點數:

^d+(.d+)?$ 或 ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$

非正浮點數:

^((-d+(.d+)?)|(0+(.0+)?))$ 或 ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$

正浮點數:

^[1-9]d*.d*|0.d*[1-9]d*$ 或 ^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$

負浮點數:

^-([1-9]d*.d*|0.d*[1-9]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+)?$ 或 ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$


二、校驗字符的表達式

漢字:

^[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})+/.?

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{8}$

國內電話號碼(0511-4405222、021-87888822):

d{3}-d{8}|d{4}-d{7}

電話號碼正則表達式(支持手機號碼,3-4位區號,7-8位直播號碼,1-4位分機號):

((d{11})|^((d{7,8})|(d{4}|d{3})-(d{7,8})|(d{4}|d{3})-(d{7,8})-(d{4}|d{3}|d{2}|d{1})|(d{7,8})-(d{4}|d{3}|d{2}|d{1}))$)

身份證號(15位、18位數字),最後一位是校驗位,可能為數字或字符X:

(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)

帳號是否合法(字母開頭,允許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])[a-zA-Z0-9]{8,10}$

強密碼(必須包含大小寫字母和數字的組合,可以使用特殊字符,長度在8-10之間):

^(?=.*d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

日期格式:

^d{4}-d{1,2}-d{1,2}

一年的12個月(01~09和1~12):

^(0?[1-9]|1[0-2])$

一個月的31天(01~09和1~31):

^((0?[1-9])|((1|2)[0-9])|30|31)$

xml文件:

^([a-zA-Z]+-?)+[a-zA-Z0-9]+\.[x|X][m|M][l|L]$

中文字符的正則表達式:

[u4e00-u9fa5]

空白行的正則表達式:

ns*r (可以用來刪除空白行)


HTML標記的正則表達式:

<(S*?)[^>]*>.*?|<.*?/>( 首尾空白字符的正則表達式:^s*|s*$或(^s*)|(s*$) (可以用來刪除行首行尾的空白字符(包括空格、制表符、換頁符等等),非常有用的表達式)

騰訊QQ號:

[1-9][0-9]{4,} (騰訊QQ號從10000開始)

中國郵政編碼:

[1-9]d{5}(?!d) (中國郵政編碼為6位數字)

IP位址:

((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))

以上就是本篇文章的全部知識分享了!希望對你有幫助哦~

如果你想更好的提升你的編程能力,好好學習C/C++編程知識成為高薪軟體開發工程師的話!那麼你很幸運~

C語言C++編程學習交流圈子,QQ群【1090842465】

分享(源碼、項目實戰視頻、項目筆記,基礎入門教程)

歡迎轉行和學習編程的夥伴,利用更多的資料學習成長比自己琢磨更快哦!

編程學習書籍:

編程學習視頻:

相關焦點

  • 好工具:一款程式設計師必備正則表達式工具
    作為一名程式設計師,不管是前端,還是後臺;都會或多或少的在日常開發中用到【正則表達式】;這東西
  • Shortcuts 教程:正則表達式修改 Markdown 連結
    今天討論如何處理「link」,這個 Shortcut 使用「正則表達式」,它把 Markdown 的 link 轉換為 footnote。和上次一樣,這麼做純屬無奈,我從來沒想到我會寫這種操作,可是要想乾乾淨淨寫文章,我們不得不先花時間清理垃圾。為什麼需要轉換Markdown 中,link(連結) 和 footnote(腳註) 是完全不同的東西。
  • Excel教程:寫出3000條公式後,發現80%的高級公式都離不開它們
    相比於第一個套路,第二個會稍難一點,但是這個套路中所用到的思路和方法確是在很多高級公式中經常用到的。學會了它們,有助於提升你運用公式的能力。數據源照舊,如下圖所示,要求統計出不重複的客戶數:在昨天我們掌握了破解公式的方法後,今天我們再來看看計算不重複數據個數的第二個公式套路。這個公式是數組公式,完成輸入後記得按CTRL+SHIFT+回車鍵,公式兩邊會自動出現大括號。
  • 表格製作Excel教程:11個常用的操作技巧
    哈嘍幾天不見了~今天分享Excel表格的11個常用乾貨技巧,幫你快速提高工作效率。如何進行多行多列的數據快速求和匯總呢?掌握對的方法,其實很簡單:只要選中求和數據區域,然後按組合鍵<Alt+=>,一秒出結果。    輸入姓名時,不只有三個字的姓名還有兩個字的姓名,你還在用空格一個個敲齊嗎?這樣太辛苦啦!
  • Excel公式練習15:求2018年母親節的日期
    微信公眾號:excelperfect本次的練習是:如何使用公式求出2018年母親節的日期?
  • 一文掌握:13 類兒科常用計算公式
    為了記住兒科臨床常用的一些計算公式,我寫了這篇文章,發到丁香園共享。提醒:公式只是參考,臨床是有變化的。
  • Excel教程:最常用日期函數匯總(收藏篇)
    支持微信公眾號+小程序+APP+PC網站多平臺學習在我們的實際工作中,經常需要用到日期函數今天一起來看下常用日期函數的用法!1、DATE函數DATE:返回在日期時間代碼中代表日期的數字。函數語法:DATE(year,month,day)函數DATEVALUE:將存儲為文本的日期轉換為Excel識別為日期的序列號。
  • 這裡給你總結總結!
    建議可以下載一個酷我K歌,然後調到伴奏模式,跟隨伴奏來練習。注意自己的氣息問題。專業歌手通常都會講,唱歌的其實就是練了一輩子的氣,所以唱功的好壞直接由氣息的把控來決定。練習氣息的方法有很多,比較常用的是通過參加各種運動增強自己的肺活量來練習。
  • Excel教程:這2個Excel公式,搞定同事半天的工作,太好用了!
    要求是在每家戶主所在行填寫對應的家庭人口數,每個小區都有幾百戶需要統計,純靠手工填寫想想都嚇人。今天就分享兩個可以統計家庭人口數的公式套路,想一起學的趕緊準備開始吧。 MATCH函數的基本功能是得到一個數據在一組數據中出現的位置,例如C2中的內容(「戶主」)在C3:C9這個區域中出現的位置是3。
  • 澳洲數學家套用公式七中樂透!
    一位不願透露姓名的澳洲數學家上周(16日)中了樂透,獲得40萬美元大獎,加上他日前曾先後6次中獎,讓他共笑納約42.2萬美元獎金,他透露自己是利用數學公式算牌
  • Excel公式詳解:月損失時間計算
    2020年對一個運行了20年系統進行了重構,最近功能都開發完了甲方領導又雙叒叕提出了個合理、必要、重要……的需求。
  • 最常用的15個查詢網址
    i=926B1C2、郵箱查詢工具,這款工具可以輸入採購商的網站,一鍵查詢採購商郵箱http://h.topeasysoft.com/w/926B1C3、驗證郵箱有效性的工具,外貿開發信當中經常會用到http://email.topeasysoft.com