国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

常見的正則表達式

這篇具有很好參考價值的文章主要介紹了常見的正則表達式。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

問題現(xiàn)象:

?問題分析:

解決方法:

拓展:

1、手機號或座機:

2、郵箱:

3、中文:

4、數(shù)字:

5、英文:

6、組合:


問題現(xiàn)象:

? ? ? ? 今天在項目中,發(fā)現(xiàn)有個正則表達式匹配不上導(dǎo)致了數(shù)據(jù)校驗不通過的問題,如下:
常見的正則表達式,正則表達式

? ? ? ? 于是就產(chǎn)生了疑問:這個正則表達式有什么問題?校驗手機號/座機號碼的正則表達式到底該怎么寫呢?


?問題分析:

????????上面這個正則表達式是我用來校驗用戶傳入的手機號和座機號。

????????根據(jù)這個問題就開始回想自己當初是怎么寫出這個正則表達式的?關(guān)于正則表達式,不知道各位小伙伴是怎么學(xué)習(xí)的,反正我自己學(xué)的時候只會理解,從來不去記,因為這個東西我感覺用得很少,而且沒有記的必要,只要在需要使用的時候,查一下資料復(fù)習(xí)一下就可以了,而更多的時候我可能只是上網(wǎng)搜一下校驗?zāi)硞€字段(如手機號)的正則表達式該怎么寫,所以當時就是上網(wǎng)搜到了這個正則表達式,然后也測過幾組手機號和座機號,感覺沒問題就搬過來了;現(xiàn)在看來是當初沒有測試得全面,而且我根本沒有認真去檢查這個搬過來的正則表達式寫得到底對不對,所以才導(dǎo)致了文章開頭那個問題的產(chǎn)生,所以在這里還是要提醒一下大家:對待網(wǎng)上的資料一定要謹慎?。?!

? ? ? ? 入正題:通過簡單的復(fù)習(xí)了一下正則表達式,然后再來觀察上面那個正則表達式,就會很容易發(fā)現(xiàn)問題了:

? ? ? ? 出錯的正則表達式:

^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$|\\d{3}-\\d{8}|\\d{4}-\\{7,8}

? ? ? ? 分析示例:

? ? ? ? 當校驗字符串為類似手機號、座機號的格式,是沒有問題的:

13400009999

14500009999

15500009999

16200009999

17799990000

18899990000

19000009999

020-11800000

????????錯誤示例:

0750-22637456

? ? ? ? 原因很簡單,其實就是因為正則表達式最后面那塊錯了:

\\{7,8}

? ? ? ? 因此,只要把它改成匹配7-8為數(shù)字即可。


解決方法:

????????將出錯的正則表達式:

^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$|\\d{3}-\\d{8}|\\d{4}-\\{7,8}

? ? ? ? 改為:

^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$|\\d{3}-\\d{8}|\\d{4}-\\d{7,8}

? ? ? ? 區(qū)別在于:\\{7,8} 改為了?\\d{7,8}


拓展:

? ? ? ? 這里記錄一下我們常見的一些正則表達式(不定期更新,親測有效,如有誤歡迎糾錯)

1、手機號或座機:

^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\\d{8}$|\\d{3}-\\d{8}|\\d{4}-\\d{7,8}

2、郵箱:

[\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?

3、中文:

任意長度的中文字符:[\u4e00-\u9fa5]

固定長度的中文字符:^[\u4e00-\u9fa5]{指定長度}$

大于等于指定長度的中文字符:^[\u4e00-\u9fa5]{指定長度,}$

4、數(shù)字:

任意長度的數(shù)字:^[0-9]*$

固定長度的數(shù)字:^\d{指定長度}$

大于等于指定長度的數(shù)字:^\d{指定長度,}$

5、英文:

任意大小寫字母:^[A-Za-z]+$

任意大寫字母:^[A-Z]+$

任意小寫字母:^[a-z]+$

6、組合:

任意英文、數(shù)字:^[A-Za-z0-9]+$

任意中文、數(shù)字:^[\u4e00-\u9fa50-9]+$

任意中文、英文:^[\u4e00-\u9fa5A-Za-z]+$

任意中文、英文、數(shù)字:^[\u4e00-\u9fa5A-Za-z0-9]+$文章來源地址http://www.zghlxwxcb.cn/news/detail-604354.html

到了這里,關(guān)于常見的正則表達式的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【SQL-正則】利用正則表達式進行過濾操作(常用正則表達式)

    1、由數(shù)字、26個英文字母或者下劃線組成的字符串 2、非負整數(shù)(正整數(shù) + 0 ) 3、正整數(shù) 4、非正整數(shù)(負整數(shù) + 0) 5、負整數(shù) 6、整數(shù) 7、非負浮點數(shù)(正浮點數(shù) + 0) 8、正浮點數(shù) 9、非正浮點數(shù)(負浮點數(shù) + 0) 10、負浮點數(shù) 11、浮點數(shù) 12、由26個英文字母組成的字符串 13、

    2024年02月12日
    瀏覽(32)
  • Java 之正則表達式語法及常用正則表達式匯總

    Java 之正則表達式語法及常用正則表達式匯總

    正則表達式,又稱規(guī)則表達式。(英語:Regular Expression,在代碼中常簡寫為 regex、regexp 或 RE),計算機科學(xué)的一個概念。正則表達式通常被用來檢索、替換那些符合某個模式(規(guī)則)的文本。 正則表達式是對字符串(包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱

    2024年02月09日
    瀏覽(31)
  • Python正則表達式之學(xué)習(xí)正則表達式三步曲

    ????????正則表達式描述了一種字符串匹配的模式,可以用來檢查一個串的有無某子串,或者做子串匹配替換,取出子串等操作。也可以說正則表達式就是字符串的匹配規(guī)則,也可以理解為是一種模糊匹配,匹配滿足正則條件的字符串。 ????????1、數(shù)據(jù)驗證(eg:表單驗

    2024年02月15日
    瀏覽(95)
  • 老夫的正則表達式大成了,桀桀桀桀?。?!【Python 正則表達式筆記】

    特殊字符 .^$?+*{}[]()| 為特殊字符,若想要使用字面值,必須使用 進行轉(zhuǎn)義 字符類 [] [] 匹配包含在方括號中的任何字符。它也可以指定范圍,例: [a-zA-Z0-9] 表示a到z,A到Z,0到9之間的任何一個字符 [u4e00-u9fa5] 匹配 Unicode 中文 [^x00-xff] 匹配雙字節(jié)字符(包括中文) 在 [] 中

    2024年02月04日
    瀏覽(21)
  • 機器學(xué)習(xí)與數(shù)據(jù)科學(xué)-專題1 Python正則表達式-【正則表達式入門-1】

    機器學(xué)習(xí)與數(shù)據(jù)科學(xué)-專題1 Python正則表達式-【正則表達式入門-1】

    為了完成本關(guān)任務(wù),你需要掌握: 在 Python 中使用正則表達式; 最基礎(chǔ)正則表達式; 正則匹配函數(shù)。 在 Python 中使用正則表達式 正可謂人生苦短,我用 Python。Python 有個特點就是庫非常多,自然擁有正則匹配這種常見的庫,并且此庫已經(jīng)嵌入在 Python 標準庫中,使用起來非常

    2024年01月22日
    瀏覽(109)
  • 正則表達式 (用于靈活匹配文本的表達式)

    目錄 . * 用于匹配任意單個字符,除了換行符。 例如使用正則表達式 a.b, 它可以匹配aab、acb、a#b 用于匹配前一個字符零次或多次。 例如,使用正則表達式 ab*c ,它可以匹配 \\\"ac\\\"、\\\"abc\\\"、\\\"abbc\\\",因為 b* 表示匹配零個或多個字符 \\\"b\\\"。所以,這個表達式可以匹配 \\\"ac\\\"(零個 \\\"b\\\"),

    2024年01月16日
    瀏覽(33)
  • 【編譯原理】【詞法分析】【正則表達式】【NFA】【DFA】【C++】正則表達式轉(zhuǎn)DFA&NFA,判斷字符串是否符合正則表達式的匹配算法

    【編譯原理】【詞法分析】【正則表達式】【NFA】【DFA】【C++】正則表達式轉(zhuǎn)DFA&NFA,判斷字符串是否符合正則表達式的匹配算法

    顯然,正則表達式、NFA、DFA的概念都很簡單,所以直接上代碼,注釋應(yīng)該解釋地比較清楚, 沒有萬能頭文件的自行替換需求庫 ,如果有疑問的可以留言。 網(wǎng)盤鏈接 [自行補全]/s/1pbGT_wpB662TwFrnukXgGQ?pwd=TSIT 提取碼:TSIT 原理可以參考這篇博客 傳送門 本次程序由四個文件組成 文

    2024年02月11日
    瀏覽(35)
  • 利用正則表達式進行爬取數(shù)據(jù)以及正則表達式的一些使用方法

    Pattern:表示正則表達式 Matcher:文本匹配器,作用按照正則表達式的規(guī)則去讀取字符串,從頭開始讀取。 在大串中去找符合匹配規(guī)則的子串。 代碼示例: 需求: 把連接:https://m.sengzan.com/jiaoyu/29104.html?ivk sa=1025883i中所有的身份證號碼都爬取出來。 代碼示例: 需求: 把下面文

    2024年02月09日
    瀏覽(28)
  • 正則表達式、常用的正則

    正則表達式(Regular Expression,簡稱為Regex或RegExp)是用于匹配和搜索文本模式的工具。它是一個強大且靈活的字符串處理工具,可以用來檢查一個字符串是否符合特定的模式,或者從一個文本中提取滿足條件的部分。 在正則表達式中,可以使用不同的元字符和特殊符號來定義

    2024年02月14日
    瀏覽(18)
  • Python高級教程(1)——正則表達式(re.match、re.search、re.sub、compile、findall、finditer、split)、正則表達式對象、正則表達式實例

    Python高級教程(1)——正則表達式(re.match、re.search、re.sub、compile、findall、finditer、split)、正則表達式對象、正則表達式實例

    正則表達式是一個特殊的字符序列,它能幫助你方便的檢查一個字符串是否與某種模式匹配。 (1)re.match函數(shù) re.match 嘗試從字符串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match() 就返回 none。 函數(shù)語法: 通過re.match匹配成功,可以使?group?法來提取數(shù)據(jù)

    2024年02月04日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包