0
我有一個list
追加_在列表中,與多個啓動項目的開始「(」
lst = ['(234A2) or (47) and 86', '(((56 or 2B2E1) and 623) and not 876) or 111']
我想同時保留()
結構
_
['(_234A2) or (_47) and _86', '(((_56 or _2B2E1) and _623) and not _876) or _111']
我已經試過
lst_split = []
for item in lst:
lst_split = item.split()
append_lst = []
for item in lst_split:
if item[0].isdigit():
item = '_' + item
append_lst.append(item)
append_lst
['_2B2E1)', '_623)', '_876)', '_111']
我將如何添加_
以任何數量的(
開頭的項目,以及使用列表理解實現此目的的更簡潔的方法是什麼?
這不正是我問,謝謝!在我申請之後,我意識到我的一些術語中有一些字母字符(即'123A423'),這種方法產生了'_123A_423'。我將如何忽略字母字符,只追加到_123A423開頭?第一個字符**總是**數字值。對不起,我沒有詳細說明,有超過200萬條款,我沒有收到。 –
'\ d +'模式匹配數字序列,如果您的術語更復雜,則可以使用不同的模式。或許'\ d \ w *'或其他符合您實際值的值(匹配數字後跟任何「單詞」字符,即字母和數字,再加下劃線)。你可以使用一個字符類更具體:'\ d [A-Z0-9]'例如只允許數字和大寫字母。 – Blckknght
'\ d \ w *'完美運作。感謝您的幫助! –