bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

Python入門(mén)進(jìn)階教程-原子-創(chuàng)新互聯(lián)

在正則表達(dá)式中,存在操作符和操作元,操作符存在優(yōu)先級(jí),操作元被稱(chēng)做原子
操作符優(yōu)先級(jí)(由高到低)
(先不用在意操作符的名稱(chēng),雖然也看不太懂)
Python入門(mén)進(jìn)階教程-原子

創(chuàng)新互聯(lián)專(zhuān)業(yè)為企業(yè)提供鎮(zhèn)平網(wǎng)站建設(shè)、鎮(zhèn)平做網(wǎng)站、鎮(zhèn)平網(wǎng)站設(shè)計(jì)、鎮(zhèn)平網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、鎮(zhèn)平企業(yè)網(wǎng)站模板建站服務(wù),十載鎮(zhèn)平做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
1. 轉(zhuǎn)義符號(hào) (Escaping Symbol):
   \
2. 分組、捕獲 (Grouping or Capturing):
   (...) (?:...) (?=...) (?!...) (?<=...) (?<!...)
3. 數(shù)量 (Quantifiers)
   a* a+ a? a{n, m}
4. 序列與定位(Sequence and Anchor)
   abc ^ $ \b \B
5. 或(Alternation)
   a|b|c
6. 原子 (Atoms)
   a [^abc] \t \r \n \d \D \s \S \w \W .

1. 本義字符

代表的就是它們的字面值,包括從 a 到 z,A 到 Z,0 到 9,還有 _
*注: 非本義字符:\ + . ? - ^ $ | ( ) [ ] { } < >,建議都直接加上轉(zhuǎn)義符號(hào) \ 來(lái)表示**

2 集合原子

標(biāo)示集合原子,使用方括號(hào) []。
即[abc] 的意思是說(shuō),“a or b or c”,即,abc 中的任意一個(gè)字符。
在方括號(hào)中,我們可以使用兩個(gè)操作符:-(區(qū)間)和 ^(非)。

- [a-z] 表示從小寫(xiě)字母 a 到小寫(xiě)字母 z 中的任意一個(gè)字符。
- [^abc] 表示 abc 以外的其它任意字符,即,非 [abc]。

舉:beg[iau]n 能夠代表 begin、began,以及 begun。

注:一個(gè)集合原子中,^ 符號(hào)只能用一次,只能緊跟在 [ 之后。否則不起作用

3. 類(lèi)別原子

能夠代表 “一類(lèi)字符” 的原子,它們都得使用轉(zhuǎn)義符號(hào)再加上另外一個(gè)符號(hào)表達(dá)
\d 任意數(shù)字;等價(jià)于 [0-9]
\D 任意非數(shù)字;等價(jià)于 [^0-9]
\w 任意本義字符;等價(jià)于 [a-zA-Z0-9_]
\W 任意非本義字符;等價(jià)于 [^a-zA-Z0-9_]
\s 任意空白;相當(dāng)于 [ \f\n\r\t\v](注意,方括號(hào)內(nèi)第一個(gè)字符是空格符號(hào))
\S 任意非空白;相當(dāng)于 [^ \f\n\r\t\v](注意,緊隨 ^ 之后的是一個(gè)空格符號(hào))
.  除 \r \n 之外的任意字符;相當(dāng)于 [^\r\n]

小技巧:d 是 digits;w 是 word characters;s 是 spaces

# 舉例
import re

str = '<dl>(843) 542-4256</dl> <dl>(431) 270-9664</dl>'
# 找到字符串中所有"數(shù)字-數(shù)字"格式的字符,其中第一個(gè)數(shù)字是三位數(shù),第二個(gè)數(shù)字是四位數(shù)
pttn = r'\d\d\d\-\d\d\d\d'
print(re.findall(pttn, str))

# 輸出
['542-4256', '270-9664']

4. 邊界原子

用邊界原子指定邊界。也可以稱(chēng)作 “定位操作符”。

^ 匹配被搜索字符串的開(kāi)始位置;
$ 匹配被搜索字符串的結(jié)束位置;
\b 匹配單詞的邊界;er\b,能匹配 coder 中的 er,卻不能匹配 error 中的 er;
\B 匹配非單詞邊界;er\B,能匹配 error 中的 er,卻不能匹配 coder 中的 er。

注:^ 和 $ 在 Python 語(yǔ)言中被 \A 和 \Z 替代。

# 舉例
import re

str = 'never ever verb however everest'
pttn = r'er\b'
print(re.findall(pttn, str))
pttn = r'er\B'
print(re.findall(pttn, str))

# 輸出
['er', 'er', 'er']
['er', 'er']

5. 組合原子

用圓括號(hào) () 將多個(gè)單字符原子組合成一個(gè)原子,() 內(nèi)的字符串將被當(dāng)作一整個(gè)原子

注意:
er 是兩個(gè)原子,'e' 和緊隨其后的 'r'
[er] 是一個(gè)原子,或者 'e' 或者 'r';
(er) 是一個(gè)原子,'er'

6. 數(shù)量操作符

數(shù)量操作符有:+ ? * {n, m}。用來(lái)限定位于它們之前的原子允許出現(xiàn)的個(gè)數(shù),不加數(shù)量限定則代表出現(xiàn)一次且僅出現(xiàn)一次

+ 代表前面的原子必須至少出現(xiàn)一次,即: 出現(xiàn)次數(shù) ≧ 1
? 代表前面的原子最多只可以出現(xiàn)一次,即:0 ≦ 出現(xiàn)次數(shù) ≦ 1
* 代表前面的原子可以不出現(xiàn),也可以出現(xiàn)一次或者多次,即: 出現(xiàn)次數(shù) ≧ 0
{n} 代表之前的原子出現(xiàn)確定的 n 次;
{n,} 代表之前的原子出現(xiàn)至少 n 次;
{n, m} 代表之前的原子出現(xiàn)至少 n 次,至多 m 次

# 匹配字符串
str = ['google', 'gooogle', 'goooogle', 'goooooogle']

# 遍歷字符串
for str_per in str:
   # o最少出現(xiàn)一次 
   pttn = r'go+gle'
   print(re.findall(pttn, str_per))

   # o最多出現(xiàn)一次 
   pttn = r'go?gle'
   print(re.findall(pttn, str_per))

   # o出現(xiàn)次數(shù)≧ 0
   pttn = r'go?gle'
   print(re.findall(pttn, str_per))

   # o出現(xiàn)至少2次,至多5次
   pttn = r'go{2,5}gle'
   print(re.findall(pttn, str_per))

   # 進(jìn)階:聯(lián)立組合原子
   # g 或者 o 最少出現(xiàn)一次
   pttn = r'[go]+gle'

   # go 最少出現(xiàn)一次
   pttn = r'(go)+gle'
   print(re.findall(pttn, str_per))
  1. 或操作符 |

或操作符 | 是所有操作符中優(yōu)先級(jí)最低的

import re

str = 'begin began begun begins beginn'
pttn = r'begin|began|begun'
print(re.findall(pttn, str))

# 輸出
['begin', 'began', 'begun', 'begin', 'begin']

注:方括號(hào)的 | 不被當(dāng)作特殊符號(hào),而是被當(dāng)作 | 這個(gè)符號(hào)本身。在方括號(hào)中的圓括號(hào),也被當(dāng)作圓括號(hào) () 本身,而無(wú)分組含義。

關(guān)于更多python進(jìn)階知識(shí),敬請(qǐng)期待!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

網(wǎng)站標(biāo)題:Python入門(mén)進(jìn)階教程-原子-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://vcdvsql.cn/article4/dshhie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)網(wǎng)站改版云服務(wù)器外貿(mào)網(wǎng)站建設(shè)軟件開(kāi)發(fā)App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)