Python高階 3 正規表示式(1)

2021-06-02 01:46:49 字數 1910 閱讀 6841

#引入re包

import re

python正規表示式有兩種編譯方式:

1)re.compile(pattern[, flags]),把正規表示式的模式和標識轉化成正規表示式物件

compiled_pattern=re.compile(pattern) 

result = compiled_pattern.match(string)

2)result = re.match(pattern, string)

1、search():在字串中查詢匹配正規表示式模式的位置,返回 matchobject 的例項,如果沒有找到匹配的位置,則返回 none。

1)pattern = re.compile('pattern')

pattern.search('string'[,pos,endpos])

2)re.search('pattern','string'[,pos,endpos])

2、match():判斷 pattern 是否在字串開頭位置匹配

1)pattern = re.compile('pattern')

pattern.match('string'[,pos,endpos])

2)re.search('pattern','string'[,pos,endpos])

match() 函式只在字串的開始位置嘗試匹配正規表示式,也就是只報告從位置 0 開始的匹配情況,

而 search() 函式是掃瞄整個字串來查詢匹配。如果想要搜尋整個字串來尋找匹配,應當用 search()。

3、split():此功能很常用,可以將字串匹配正規表示式的部分割開並返回乙個列表;對於乙個找不到匹配的字串而言,split 不會對其作出分割

1)pattern = re.compile('pattern')

pattern.split('string'[, maxsplit=0, flags=0])

2)re.split('pattern', 'string'[, maxsplit=0, flags=0])

4、findall():在字串中找到正規表示式所匹配的所有子串,並返回乙個列表。

1)pattern = re.compile('pattern')

pattern.findall('string'[, pos[, endpos]])

2)re.findall('pattern', 'string'[, pos[, endpos]])

5、finditer():和 findall 類似,在字串中找到正規表示式所匹配的所有子串,並組成乙個迭代器返回

1)pattern = re.compile('pattern')

pattern.finditer('string'[, pos[, endpos]])

2)re.finditer('pattern', 'string'[, pos[, endpos]])

6、sub():在字串 string 中找到匹配正規表示式 pattern 的所有子串,用另乙個字串 repl 進行替換。如果沒有找到匹配 pattern 的串,則返回未被修改的 string。repl 既可以是字串也可以是乙個函式。

1)pattern = re.compile('pattern')

pattern.sub(repl, string[, count=0])

2)re.sub(pattern, repl, string[, count, flags])

7、subn():該函式的功能和 sub() 相同,但它還返回新的字串以及替換的次數。

1)pattern = re.compile('pattern')

pattern.sub(repl, string[, count=0])

2)re.subn(pattern, repl, string[, count, flags])

Python 高階 正規表示式1

匯入re模組 import re 使用match方法進行匹配操作 result re.match 正規表示式,要匹配的字串 如果上一步匹配到資料的話,可以使用group方法來提取資料 滿足規範要求的資料 result.group 1.檢視乙個字串是否符合python變數規範 import re 判斷...

Python 正規表示式 3

coding utf 8 匯入re模組 import re 今天討論邊界問題 黨我們想得到乙個郵箱的時候我們可以用正則很快的判斷,但是如果是乙個錯誤的位址我們怎麼判斷呢,1name 2345 163.com result re.match d s d s w name print result.gr...

Python 正規表示式(1)

import re text hi,i am shirley hilton.i am his wife.m re.findall r bhi b text 表示hi這個單詞,結果是無匹配 if m print m else print not match n re.findall r bhi tex...