簡體   English   中英

重疊圖案正則表達式

[英]Overlapping patterns regex

使用python和regex我嘗試匹配重復/重疊模式/塊

04/00127-48
U 05062012
A: SAKARK
T_ Par.: dsfsd

04/00127-48
U 05062012
A: SAKARK
T_ Par.: dsfsd
04/00168-42
U 05062012
A: SAKARK
T_ Par.: fdfs
04/00168-43
U 05062012
A: SAKARK
T_ Par.: fdfs

我努力了

'(?=(\d+\/.*))'

這似乎有效

'((\d+\/.*?)=?\d+\/)

但有更好的方法嗎?

這回答了你的問題:

re.findall(r'.+?(?=\d\d\/|$)',s,re.DOTALL)

re.DOTALL需要讓. 匹配行尾。

正則表達式前面的r使它成為一個原始字符串,因此使用反斜杠進行轉義會保留原樣,因此正則表達式函數將處理它們。 這里不需要它,但仍然是正則表達式的好習慣。

你的問題不是很清楚。 也許這比你想要的更好?

list(zip(*[iter(s.splitlines())]*4))

它給出了一個包含元組的列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM