python正規表示式re模組

2022-08-23 18:51:15 字數 1259 閱讀 6319

首先,介紹下正規表示式,舉個例子:

r"(?<=)"

?<=前向匹配,匹配目標字串之前的內容(向前匹配但不取用)

?=後向匹配,其他參考上一句

?非貪婪匹配,即匹配到第一符合的

不加?為貪婪匹配,會盡可能多的匹配

1

import

re2 key = '''

]"}4

'''5 p1 = r"

\.0+(?=[^0])"#

這是我們寫的正規表示式規則

6 pattern1 = re.compile(p1) #

我們在編譯這段正規表示式

7print(pattern1.findall(key)) #

檢視下匹配到什麼

89 newkey = re.sub(p1, ""

, key)

10print("

原文本:

" +key)

11print("

新文字:

"+newkey)

另外還有re.search等方法

正規表示式上說:

. 匹配除換行符以外的任意字元

\d 匹配數字

\b 匹配單詞的開始或結束

^ 匹配字串的開始

$ 匹配字串的結束

\w 匹配字母或數字或下劃線或漢字 等價於 '[^a-za-z0-9_]'。

\w 能不能匹配漢字要視你的作業系統和你的應用環境而定

\s 匹配任何空白字元,包括空格、製表符、換頁符等等。等價於 [ \f\n\r\t\v]。(待考證)

例2:

import

reline = '

select toaccount,billid,deductitem,deductamt,sendresult,resultdesc,businessid,accountno,receivedtype,receivedtime from deduct.deductinstruction where businessid=@bid order by receivedtime desc

'pattern = re.compile(r'

(?<=\s)[^\s]+(?=\swhere)')

table_name =pattern.findall(line)

print

(table_name)

#結果為 pay.deductinstruction

#正則中 \s 匹配空格

參考:

python正規表示式re模組

嗯 看看就好 小白可能會坑人 有錯誤的話麻煩指出來謝謝 2018年3月15日13 54 11 re 模組 函式與方法的區別 如果是乙個函式,用類名去呼叫,如果是乙個方法,用物件去呼叫 1.compile函式 編 print n1 10 n import re pattern re.compile r...

Python 正規表示式 re模組

在python中,需要用到正規表示式時,就需要匯入re模組進行操作,們可以直接呼叫來實現正則匹配 普通字元 匹配自身 abcabc 匹配任意除換行符 n 外的字元 在dotall模式中也能匹配換行符 a.cabc 轉義字元,使後乙個字元改變原來的意思 a.c a c a.c a c 匹配前乙個字元0...

re模組 正規表示式 python

d 匹配數字 w 匹配字母或數字 s 匹配乙個空格 包括tab s 表示至少乙個空格 表示任意字元 包括零個 表示至少乙個字元 表示0個或1個字元 表示n個字元 表示n m個字元 可以匹配任意字元 a b 表示可以匹配a或b 行的開頭 d 表示必須以數字開頭 表示結尾 d 表示必須以數字結尾 r 字...