python中re庫基礎

2021-10-08 17:34:15 字數 2746 閱讀 9538

正規表示式

基礎使用方法

data=re.compile(』\d』,re.i|re.s)

建立正規表示式物件—第二個引數代表忽略大小寫以及換行

str=data.findall(zfc) 進行字串匹配 返回是列表形式

re類

正規表示式

.*?萬能匹配

zfc=

'asdkfgjosadjfo1234asdtfgw{}er888{}888asdfuhjunf違法我發生的v給v額1234dfg555555'

re.match(pattern, string, flags=

0) 從字串的起始位置匹配,如果起始位置匹配不成功的話,match(

)就返回none

re.search(pattern, string, flags=

0) 掃瞄整個字串並返回第乙個成功的匹配

re.findall(pattern, string, flags=

0) 找到re匹配的所有字串,並把他們作為乙個列表返回

re.finditer(pattern, string, flags=

0) 找到re匹配的所有字串,並把他們作為乙個迭代器返回

re.sub(pattern, repl, string, count=

0, flags=

0) 替換匹配到的字串

一.常用正規表示式符號和語法:

'.' 匹配所有字串,除\n以外

『-』 表示範圍[0-

9]'*' 匹配前面的子表示式零次或多次。要匹配 * 字元,請使用 \*。

'+' 匹配前面的子表示式一次或多次。要匹配 + 字元,請使用 \+

'^' 匹配字串開頭

『$』 匹配字串結尾 re

'\' 轉義字元, 使後乙個字元改變原來的意思,如果字串中有字元*需要匹配,可以\*或者字符集[*] re.findall(r'

3\*','

3*ds')結['

3*']

'*' 匹配前面的字元0次或多次 re.findall(

"ab*"

,"cabc3abcbbac"

)結果:[

'ab'

,'ab'

,'a'

]『?』 匹配前乙個字串0次或1次 re.findall(

'ab?'

,'abcabcabcadf'

)結果[

'ab'

,'ab'

,'ab'

,'a'

]'' 匹配前乙個字元m次 re.findall(

'cb'

,'bchbchcbfbcbb'

)結果[

'cb'

,'cb'

]'' 匹配前乙個字元n到m次 re.findall(

'cb'

,'bchbchcbfbcbb'

)結果[

'cbb'

]'\d' 匹配數字,等於[0-

9] re.findall(

'\d'

,)結果[

'1',

'0',

'0',

'8',

'6']

'\d' 匹配非數字,等於[^0

-9] re.findall(

'\d'

,)結果[

'電',

'話',

':']

'\w' 匹配字母和數字,等於[a-za-z0-

9] re.findall(

'\w'

,'alex123,./;;;'

)結果[

'a',

'l',

'e',

'x',

'1',

'2',

'3']

'\w' 匹配非英文本母和數字,等於[

^a-za-z0-

9] re.findall(

'\w'

,'alex123,./;;;'

)結果[

',',

'.',

'/',

';',

';',

';']

'\s' 匹配空白字元 re.findall(

'\s'

,'3*ds \t\n'

)結果[

' ',

'\t'

,'\n'

]'\s' 匹配非空白字元 re.findall(

'\s'

,'3*ds \t\n'

)結果[

'3',

'*',

'd',

's']

'\a' 匹配字串開頭

'\z' 匹配字串結尾

'\b' 匹配單詞的詞首和詞尾,單詞被定義為乙個字母數字序列,因此詞尾是用空白符或非字母數字符來表示的

'\b' 與\b相反,只在當前位置不在單詞邊界時匹配

'(?p...)' 分組,除了原有編號外在指定乙個額外的別名 re.search(

"(?p[0-9])(?p[0-9])(?p[0-9])"

,"371481199306143242"

).groupdict(

"city"

) 結果

是定義匹配的字元範圍。比如 [a-za-z0-

9] 表示相應位置的字元要匹配英文本元和數字。[\s*

]表示空格或者*號。

python基礎 re使用

以乙個帶檔案操作的例子說明 目標 開啟乙個檔案,提取 中的內容,儲存在乙個新的檔案裡 涉及到的一些操作 序號操作 1檔案操作codecs.open 2正規表示式re模組的使用 上 import linecache import re import codecs filename lolstatist...

python基礎 Re正則

正規表示式 regular expression,簡稱re 正規表示式是對字串操作的 種邏輯公式,就是 事先定義好的 些特定字元 及這些特定字元的組合,組成 個 規則字串 這個 規則字串 來表達對字串的 種過濾邏輯。字串的匹配查詢 re模組中的findall函式可以對指定的字串進行遍歷匹配,獲取字串...

Python 中re庫的簡單使用

1.findall 方法 返回乙個列表 如下 import re text f open testtext.txt r encoding cp936 for each line in f text text each line f.close result re.findall a z a z a ...