日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

正則表達(dá)式規(guī)則

作者:喜樂有分享 更新時間: 2022-07-26 編程語言

??????? 正則表達(dá)式可以匹配某些特定的數(shù)據(jù),如果你想要從龐大的文字信息中提取出一小段你需要的數(shù)據(jù),那么正則表達(dá)式或許能幫到你。

字符組

[ ]允許匹配一組可能出現(xiàn)的字符。

?可以發(fā)現(xiàn)[Pp]既可以匹配大寫的P也可以匹配小寫的p。

區(qū)間

1、要匹配任意數(shù)字可以使用[0-9]。

2、如果想要匹配所有小寫字母,可以寫成[a-z]。

3、想要匹配所有大寫字母可以寫成[A-Z]。

匹配特殊字符

“[]”在正則表達(dá)式命令中具有意義,如果我們想要匹配符號“[]”則需要進(jìn)行轉(zhuǎn)義即 \[] ,其他符號例如  '()' '\' 等均可實(shí)現(xiàn),其中小括號若需要 '\(\)'轉(zhuǎn)義兩次,大括號不用轉(zhuǎn)義

快捷方式

^  在[]內(nèi)表示取反,在外表示匹配行首,寫在匹配字符前面

$  匹配行尾,寫在匹配字符后面。

\d 數(shù)字字符,等價于[0-9]。

\w 單詞字符(字母,數(shù)字及下劃線),等價于[0-9a-zA-Z_]。

\s 空白符(tab和空格)。

\b 匹配單詞邊界。

\D\W\S\B與\d\w\s\b匹配相反。

'.'匹配除 “\n” 之外的任何單個字符。要匹配包括 ‘\n’(回車產(chǎn)生的換行)在內(nèi)的任何字符,請使用  ‘[.\n]’進(jìn)行匹配

?匹配前一個字符或字符組出現(xiàn)零次或一次,另一個作用是將貪婪模式修改為非貪婪模式。

+ 匹配前一個字符或字符組一次或多次。

* 匹配前一個字符或字符組零次或多次。

匹配多個區(qū)間

在一個字符組后加上{N} 就可以表示在它之前的字符組出現(xiàn)N次。

{M,N},M是下界而N是上界。例如\d{3,4} 既可以匹配3個數(shù)字也可以匹配4個數(shù)字,不過當(dāng)有4個數(shù)字的時候,優(yōu)先匹配的是4個數(shù)字,這是因?yàn)檎齽t表達(dá)式默認(rèn)是貪婪模式,即盡可能的匹配更多字符,而要使用非貪婪模式,我們要在表達(dá)式后面加上 ?號。

分組

()   分組。使用分組時,除了獲得整個匹配。還能夠在匹配中選擇每一個分組。

|    或者。使用分組的同時還可以是用或者條件,與“or”相同。

(?:表達(dá)式) 有時候,我們并不需要捕獲某個分組的內(nèi)容,但是又想使用分組的特性。

\N   表示可以引用與編號為N的分組相同的格式,且匹配的數(shù)據(jù)最終結(jié)果也與N相同。

先行 / 后行斷言

(?=表達(dá)式)  正向先行斷言。指在某個位置向右看,表示所在位置右側(cè)必須能匹配表達(dá)式。

(?!表達(dá)式)  反向先行斷言。指在某個位置向右看,表示所在位置右邊不能匹配表達(dá)式。

(?<=表達(dá)式) 正向后行斷言。指在某個位置向左看,表示所在位置左側(cè)必須能匹配表達(dá)式。

(?<!表達(dá)式) 反向后行斷言。指在某個位置向左看,表示所在位置左側(cè)不能匹配表達(dá)式。

例子:

提取下列數(shù)據(jù)中所有人的生日,使用兩個分組,第一個分組提取“月”,第二個分組提取“日”。

?請編寫正則表達(dá)式匹配所有的小數(shù):

?匹配8-16位密碼包含大小寫字母,數(shù)字,部分字符

?

原文鏈接:https://blog.csdn.net/weixin_52159400/article/details/125869987

欄目分類
最近更新