Python使用正則匹配處理文字

2021-10-10 08:07:20 字數 1234 閱讀 6859

文字內容處理

import re

pattern = re.

compile

('xmin = .*\n.*xmax = .*\n.*text = ".*"'

)pattern1 = re.

compile

('xmax = .*'

)pattern2 = re.

compile

('xmin = .*'

)# with open('./041.textgrid') as lines: #一次性讀入txt檔案,並把內容放在變數lines中

# # m = pattern1.findall(lines)

# print(lines)

content =

open

('./041.textgrid'

).read(

)# 讀取文字內容 為字串str

m = pattern.findall(content)

# 根據正則匹配所有合適的內容放入list

lens =

len(m)

# 列表長度

# print(type(m)) # 檢視型別

for i in m:

temp1 = i.split(

'\n')[

0].strip(

).split(

'=')[1

]#迴圈後的值進行切分 list下標為 0,1,2

temp2 = i.split(

'\n')[

1].strip(

).split(

'=')[1

] te*** = i.split(

'\n')[

2].strip(

).split(

'=')[1

]# 根據內容剔除不需要的內容

if te*** ==

' "sp"'

:continue

elif te*** ==

' "sil"'

:pass

elif te*** ==

' "d"'

:pass

else

:print

('xmin:{}; xmax:{}; text:{}'

.format

(temp1, temp2, te***)

)

正則匹配 Python

1.1 0 1 個字元1.2 放在末尾,兩個對等字元之間 對等字元 所有稱得上是括號的字元 左右對稱 所有非括號字元 自對稱 最小對等字元匹配 比如 匹配下文 最小結果只有順帶地,當有多個匹配結果時,m re.search m.group n 返回第n組括號匹配的字元。只需要一組結果時,用m.gro...

Python正則匹配

使用re模組 首先生成乙個匹配模式pattern,如pattern test 然後使用re.match pattern,str 或者search 匹配呼叫 match跟search的區別 match 函式試圖從字串的起始部分對模式進行匹配。如果匹配成功救返回乙個匹配物件 如果匹配失敗,就返回none...

python正則匹配

1.匹配字串中的乙個百分比數字 import re t yuchen is a very lovely girl.5.568 company ltd.match re.search r d d t print match.group 2.匹配小括號 裡面的內容 這種方式的輸出是列表型別,不包含括號本...