[英]How to get this regex include overlapping occurrences, but not too much:-?
我想獲得模式'[number]'的所有出現,包括它們的上下文,但是我不能。
這是我的代碼:
import re
text = 'some crap [00][0] some more'
regex = r'\[[0-9]*\]'
regex = '.{0,10}' + regex + '.{0,10}'
occurrences = re.findall(regex, text)
for occ in occurrences print(occ)
到底有什么問題!?
我的代碼在任何情況下都可以按我希望的方式工作,除了兩個[number]塊之間的字符少於10個時。 在尋找兩個結果的同時,我的代碼給了我一個結果。 如果我將正則表達式設置為包括重疊出現的內容,那么它將給出針對不同上下文長度的所有結果。 我不能專門設置上下文長度,因為我想在字符串的開頭和結尾都包含出現的內容。
我真正想要的是:
我更喜歡純正則表達式解決方案,以使我了解所提及模式的所有出現情況,包括其上下文。
如果真的不可能,我會用一個使用位置並從字符串中選擇范圍的解決方案做得很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.