我有几个对齐文件。我使用正则表达式使用if re.search(r" A-Z [A-Z]",seq)来获取带有间隙的那些:得到带有间隙的序列,例如M -------- A。我的问题是IN PYTHON如何获得前后差距的字符M和A? 这是我正在使用的文件的示例。谢谢。
3ENMA 113E84F72145D181 316 XRAY 2.350 0.215 0.269 no双特异性丝裂原活化蛋白激酶激酶6 [Homo sapiens] || 3ENMB 3ENMC 3ENMD HHHHDYDIPTTENLYFQGAME ---------------- NFEVKADDLEPIMELGRGAYGVVEKMRHVPSGQIMA VKRIRATVNSQEQKRLLMDLDISMRTVDCPFTVTFYGALFREGDVWICMELMDTSLGIVKALEHLHSKLSVIHRDVKPSNVLINALGQVKMCDFGISGYLVDDVAKDIDAGCKPYMAPERINPELNQKGYSVKSDIWSLGITMIELAILRFPYDSWGTPFQQLKQVVEEPSPQLPADKFSAEFVDFTSQCLKKNSKERPTYPELMQHPFFT ----------
答案 0 :(得分:0)
您希望在包含多个短划线[A-Z]
的“间隙”之前和之后捕获大写字母-+
。
因此,您的正则表达式应包含([A-Z])-+([A-Z])
要提取两个大写字符,您可以将re.replace
与$1
和$2
一起用作替换字符串的一部分。