我有頭的數組,我得到使用以下命令標題:在字符串列表找到一個模式
>>> headers=list(data.dtype.names)
>>> headers
['SqNr', 'Xpos', 'Ypos', 'ALPHA_J2000', 'DELTA_J2000', \
'UMAG', 'BMAG', 'VMAG', 'RMAG', 'IMAG', 'MB420MAG', \
'MB464MAG', 'MB485MAG', 'MB518MAG', 'MB571MAG', 'MB604MAG',\
'MB646MAG', 'MB696MAG', 'MB753MAG', 'MB815MAG', 'MB855MAG',\
'MB915MAG', 'UMAG_ERR', 'BMAG_ERR', 'VMAG_ERR', 'RMAG_ERR',\
'IMAG_ERR', 'MB420MAG_ERR', 'MB464MAG_ERR', 'MB485MAG_ERR',\
'MB518MAG_ERR', 'MB571MAG_ERR', 'MB604MAG_ERR', 'MB646MAG_ERR',\
'MB696MAG_ERR', 'MB753MAG_ERR', 'MB815MAG_ERR', 'MB855MAG_ERR',\
'MB915MAG_ERR', 'PHOTOZ', 'PHOTOZ_ERR', 'PHOTOZ2', 'PHOTOZ2_ERR',\
'Z_B', 'Z_B_MIN', 'Z_B_MAX', 'T_B', 'ODDS', 'CHISQUARED', 'Z_M',\
'Z_fp', 'Z_sp', 'Z_s']
我希望做一個列表包括與在MAG
模式的所有字符串另一個包含MAG_ERR
。我怎麼能這樣做? 我用的是下面幾行,以獲得正確的結果想:
import re
pattern='MAG'
re.match(r'(%s)+$' % pattern, "".join(headers))
但它不會返回任何東西。我怎麼能實現對正確答案分別是:
a=['UMAG', 'BMAG', 'VMAG', 'RMAG', 'IMAG', 'MB420MAG',\
'MB464MAG', 'MB485MAG', 'MB518MAG', 'MB571MAG', 'MB604MAG',\
'MB646MAG', 'MB696MAG', 'MB753MAG', 'MB815MAG', 'MB855MAG','MB915MAG']
第二個不返回答案,但第一行工作! – Dalek 2014-09-23 22:04:17
@Dalek請參閱編輯。我有一個錯誤的括號。他們現在應該很好。 – skrrgwasme 2014-09-23 22:12:59