我學習正則表達式,並試圖做到以下幾點:的字母數字組成的Python正則表達式
下面是一系列的字母數字組成的格式。它從4位開始,後跟2個空格,後跟8個數字,後跟1個空格,後跟8個數字,後跟1個空格,後面是8個數字,後面跟着單個空格,後面跟着8個數字,後面跟着一個空格,後面跟着一個OR欄。
FFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF |
或書面的更清楚:
FFFF[space][space]FFFFFFFF[space]FFFFFFFF[space]FFFFFFFF[space]FFFFFFFF[space]|
我首先需要在其中找到與00A3開頭的文件的正確路線。然後,我需要拔出我已經與使用陷害位組:
p = re.compile('00A3 ') # search for 00A3[space][space]
r = re.compile(???) # search for desired 8 digit groups
q = re.compile(\[SECTION2\])
dataString = inFile.next() # 00A3 388A63FF 00000DF1 52984731 FF989ACB
while not q.match(dataString) # look for [SECTION2] line in file. This means we passed where 00A3 would have been so it must not be here.
if p.match(dataString):
numbers = r.findall(dataString) # numbers = [388A63FF, 00000DF1, 52984731, FF989ACB]
break
dataString = inFile.next() # get next line to check
這應該給我作進一步處理號碼列表。我只是不知道如何編寫正則表達式,將找到只有4個8個字母數字與空格分隔。我的想法是尋找8個字母數字,前面有一個空格,後面有一個空格,但是會導致問題,看起來如何?
我看着前方,看後面的選項,但我感到困惑。
我對此仍然很陌生,特別是在Python中,所以我願意提供更好的實現建議。
謝謝!
這工作得很好。我對其他建議有一些問題。感謝您使用正則表達式的幫助! – radensb