study - 一文入門正則表達(dá)式 每日看點

2023-03-08 23:12:44來源:騰訊云

正則表達(dá)式是什么

校驗數(shù)據(jù)的有效性、查找符合要求的文本以及對文本進(jìn)行切割和替換等操作。


(資料圖片僅供參考)

正則表達(dá)式的目的是真正的強(qiáng)大之處就在于可以查找符合某個規(guī)則的文本。

元字符

1.特殊字符串

. 除換行符外任意字符\d 表示任意單個數(shù)字 \w 表示任意單個數(shù)字或字母或下劃線\s 表示任意單個空白符

\D \W \S,意思正相反。

2.空白符

\r 回車符\n 換行符\f 換頁符\t 制表符\v 垂直制表符\s 任意空白符

3.量詞

* 代表0次到多次+ 1次到多次? 0到1次{m} 出現(xiàn)m次{m,} 出現(xiàn)至少m次{m,n} m到n次

4.范圍

|或 ,如ab|bc代表ab或bc... 多選一,括號中任意單個元素a-z 匹配a-z之間任意單個元素^.. 取反,不能包括括號中的任意單個元素

貪婪匹配、非貪婪匹配和獨(dú)占模式

貪婪模式的特點就是盡可能進(jìn)行最大長度匹配非貪婪模式會盡可能短地去匹配。獨(dú)占模式和貪婪模式很像,獨(dú)占模式會盡可能多地去匹配,如果匹配失敗就結(jié)束,不會進(jìn)行回溯,這樣的話就比較節(jié)省時間。具體的方法就是在量詞后面加上加號(+),例如xy{1,3}+yz

注意: Python 和 Go 的標(biāo)準(zhǔn)庫目前都不支持獨(dú)占模式。

(“.+?”)|\w{2,6}

分組和引用

如圖所示的正則,將日期和時間都括號括起來。這個正則中一共有兩個分組,日期是第 1 個,時間是第 2 個。

1.不保存子組

分組的作用就是后續(xù)可能還會被引用到,但是如果不需要引用的時候可以添加不保存子組,表達(dá)式(?:xxx),優(yōu)點是正則性能會更好,在子組計數(shù)時也更不容易出錯。

2.括號嵌套

分組引用在查找中使用

...略

四種匹配模式

1.不區(qū)分大小寫模式(Case-Insensitive)

不區(qū)分大小寫模式,正則表達(dá)式(?i)cat,這樣匹配的字符就不區(qū)分大小寫了

如果我們想要前面匹配上的結(jié)果,和第二次重復(fù)時的大小寫一致,那該怎么做呢?我們只需要用括號把修飾符和正則 cat 部分括起來,加括號相當(dāng)于作用范圍的限定,讓不區(qū)分大小寫只作用于這個括號里的內(nèi)容。正則表達(dá)式((?i)cat)

2.點號通配模式(Dot All)

元字符里講.可以匹配除了換行以外的任何元素,用單行模式中使用.,正則表示式(?s).

3.多行匹配模式

多行模式的表達(dá)式(?m)^...|...$,這樣的匹配好處是每一行

斷言

斷言是指對匹配到的文本位置有要求。

1.單詞邊界

在準(zhǔn)確匹配單詞時,我們使用 \b...\b就可以實現(xiàn)了,也可以指定表達(dá)式的開頭和結(jié)尾^...$

2.環(huán)視

環(huán)視的主要是定義清晰的邊界。

(?<=Y),左邊是Y(?<=!Y),左邊不是Y(?=Y),右邊是Y(?!Y),右邊不是Y

左尖括號代表看左邊,沒有尖括號是看右邊,感嘆號是非的意思。

常用正則Demo

正則表達(dá)式用于字符串處理、表單驗證等場合,實用高效。現(xiàn)將一些常用的表達(dá)式收集于此,以備不時之需。

匹配中文字符的正則表達(dá)式: [u4e00-u9fa5]匹配雙字節(jié)字符(包括漢字在內(nèi)):[^x00-xff]匹配空白行的正則表達(dá)式:ns*r匹配HTML標(biāo)記的正則表達(dá)式:<(S*?)[^>]*>.*?|<.*? />匹配首尾空白字符的正則表達(dá)式:^s*|s*$匹配Email地址的正則表達(dá)式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*匹配網(wǎng)址URL的正則表達(dá)式:[a-zA-z]+://[^s]*匹配帳號是否合法(字母開頭,允許5-16字節(jié),允許字母數(shù)字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$匹配國內(nèi)電話號碼:d{3}-d{8}|d{4}-d{7}( 匹配形式如 0511-4405222 或 021-87888822)匹配中國郵政編碼:[1-9]d{5}(?!d)匹配身份證:d{15}|d{18}

2.匹配特定數(shù)字:

匹配正整數(shù) ^[1-9]d*$匹配負(fù)整數(shù) ^-[1-9]d*$匹配整數(shù) ^-?[1-9]d*$匹配非負(fù)整數(shù)(正整數(shù) + 0)^[1-9]d*|0$匹配非正整數(shù)(負(fù)整數(shù) + 0)^-[1-9]d*|0$匹配正浮點數(shù) ^[1-9]d*.d*|0.d*[1-9]d*$匹配負(fù)浮點數(shù) ^-([1-9]d*.d*|0.d*[1-9]d*)$匹配浮點數(shù) ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$匹配非負(fù)浮點數(shù)(正浮點數(shù) +0) ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$匹配非正浮點數(shù)(負(fù)浮點數(shù) + 0)^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$

3.匹配特定字符串:

匹配由26個英文字母組成的字符串 ^[A-Za-z]+$匹配由26個英文字母的大寫組成的字符串 ^[A-Z]+$匹配由26個英文字母的小寫組成的字符串 ^[a-z]+$匹配由數(shù)字和26個英文字母組成的字符串 ^[A-Za-z0-9]+$匹配由數(shù)字、26個英文字母或者下劃線組成的字符串 ^w+$只能輸入數(shù)字:^[0-9]*$只能輸入n位的數(shù)字:^d{n}$只能輸入至少n位數(shù)字:^d{n,}$只能輸入m-n位的數(shù)字:^d{m,n}$只能輸入零和非零開頭的數(shù)字:^(0|[1-9][0-9]*)$只能輸入有兩位小數(shù)的正實數(shù):^[0-9]+(.[0-9]{2})?$只能輸入有1-3位小數(shù)的正實數(shù):^[0-9]+(.[0-9]{1,3})?$只能輸入非零的正整數(shù):^+?[1-9][0-9]*$只能輸入非零的負(fù)整數(shù):^-[1-9][0-9]*$只能輸入長度為3的字符:^.{3}$只能輸入由26個英文字母組成的字符串:^[A-Za-z]+$只能輸入由26個大寫英文字母組成的字符串:^[A-Z]+$只能輸入由26個小寫英文字母組成的字符串:^[a-z]+$只能輸入由數(shù)字和26個英文字母組成的字符串:^[A-Za-z0-9]+$只能輸入由數(shù)字、26個英文字母或者下劃線組成的字符串:^w+$驗證用戶密碼:^[a-zA-Z]w{5,17}$正確格式為:以字母開頭,長度在6-18之間,只能包含字符、數(shù)字和下劃線。驗證是否含有^%&"",;=?$"等字符:[^%&"",;=?$x22]+只能輸入漢字:^[u4e00-u9fa5],{0,}$驗證Email地址:^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$驗證InternetURL:^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$驗證電話號碼:^((d{3,4})|d{3,4}-)?d{7,8}$

關(guān)鍵詞:

責(zé)任編輯:孫知兵

免責(zé)聲明:本文僅代表作者個人觀點,與太平洋財富網(wǎng)無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實相關(guān)內(nèi)容。
如有問題,請聯(lián)系我們!

關(guān)于我們 - 聯(lián)系方式 - 版權(quán)聲明 - 招聘信息 - 友鏈交換 - 網(wǎng)站統(tǒng)計
 

太平洋財富主辦 版權(quán)所有:太平洋財富網(wǎng)

?中國互聯(lián)網(wǎng)違法和不良信息舉報中心中國互聯(lián)網(wǎng)違法和不良信息舉報中心

Copyright© 2012-2020 太平洋財富網(wǎng)(www.8899ip.com) All rights reserved.

未經(jīng)過本站允許 請勿將本站內(nèi)容傳播或復(fù)制 業(yè)務(wù)QQ:3 31 986 683

 

主站蜘蛛池模板: 中国国产成人精品久久| 成人污视频网站| 免费网站看v片在线成人国产系列 免费观看一级成人毛片 | 国产成人精品A视频一区| 国产精品成人第一区| 国产成人无码区免费A∨视频网站 国产成人无码区免费内射一片色欲 | 成人免费视频小说| 国产成人精品a视频| 四虎影院成人在线观看俺也去色官网| 亚洲国产精品一区二区成人片国内| www成人免费视频| 成人黄色在线网站| 亚洲精品无码乱码成人| 久久久久av综合网成人| 日韩成人在线网站| 亚洲依依成人精品| 成人午夜福利电影天堂| 依依成人精品视频在线观看| 99久久亚洲综合精品成人网| 国产成人精品久久综合| 2021最新国产成人精品视频| 国产成人精品一区二区秒拍| 欧美成人看片一区二区三区| 国产精品成人久久久久久久| 亚洲国产成人一区二区精品区| 成人毛片免费观看视频在线| 亚洲色成人WWW永久在线观看 | 亚洲最大成人网色| 国产成人精品无码专区| 成人毛片18女人毛片| 亚洲av成人一区二区三区| 国产成人精品日本亚洲专区61| 色综七七久久成人影| 国产精品成人一区二区三区 | 国产成人国产在线观看入口| www亚洲欲色成人久久精品| 国产成人无码精品久久久免费| 在线91精品亚洲网站精品成人| 成人福利免费视频| 成人看片黄a在线观看| 日韩欧美国产成人|