2017-05-08 44 views
-3
line = 'bla bla bla Tax_Id=9606 Gene_Symbol=OR4F16 OR4F28P OR4F29 OR4F2P OR4F3 DTR4F7P BPFR4F8P Gene_Accession=ENSG00000217874 bla bla bla' 

我試圖匹配所有的基因符號。我嘗試使用re,正則表達式和他們不同的模塊,但它不起作用。正則表達式:複雜多重匹配

+0

你是怎麼試試嗎? – gaganshera

+0

有很多人可能願意提供幫助,David。你將不得不更加明確你想做什麼。你還需要顯示你已經編寫了哪些代碼來解決問題,比如使用re模塊。 –

+0

'但它不工作'正則表達式工作! – sln

回答

0

這個工作假設Gene_Symbol和Gene_Accession總是按照你的例子。否則,正則表達式需要調整。

import re 

line = 'bla bla bla Tax_Id=9606 Gene_Symbol=OR4F16 OR4F28P OR4F29 OR4F2P OR4F3 DTR4F7P BPFR4F8P Gene_Accession=ENSG00000217874 bla bla bla' 

regex = r"Gene_Symbol=(.*)Gene_Accession" 

p = re.search(regex,line) 

symbols = p.group(1).split() 

for symbol in symbols: 
    print symbol 

輸出:

OR4F16 
OR4F28P 
OR4F29 
OR4F2P 
OR4F3 
DTR4F7P 
BPFR4F8P 
+0

非常感謝! – VaraZ