如何在python中获取间隙前和间隙后的字符

如何在python中获取间隙前和间隙后的字符,python,Python,请给我几个对齐文件。我使用正则表达式通过if-re.search(r“A-Z[A-Z]”,seq)提取有间隙的序列,以获得有间隙的序列,例如M-------A。我的问题是在PYTHON中,如何获得位于间隙前后的字符M和A? 下面是我正在处理的文件的一个示例。多谢各位 3ENMA 113E84F72145D181 316 X射线2.350 0.215 0.269无双特异性丝裂原活化蛋白激酶激酶6[智人]| | 3ENMB 3ENMC 3ENMD HHHDYDIPTTENLYFQGAME------

请给我几个对齐文件。我使用正则表达式通过if-re.search(r“A-Z[A-Z]”,seq)提取有间隙的序列,以获得有间隙的序列,例如M-------A。我的问题是在PYTHON中,如何获得位于间隙前后的字符M和A? 下面是我正在处理的文件的一个示例。多谢各位

3ENMA 113E84F72145D181 316 X射线2.350 0.215 0.269无双特异性丝裂原活化蛋白激酶激酶6[智人]| | 3ENMB 3ENMC 3ENMD HHHDYDIPTTENLYFQGAME-------------------NFEVKADDLEPIMELGRGAYGVEKMRHVPSGQIMA VkriratVnsqEqKrlMDLldismrTvTvTfyGalfregdvWicmelmdTsLgivKalehlhSklsVihrDvKpsnVLINALGqVKmCdFgGisGyLvDvDvDvDvDvDvDvDvDvTvDvDvTvTvKvTvLkKvLkKvKvKvLkKvKvKvKvKvKvKvKvKvKvKvKvKvKvKvKvKvKvKvKv----------


您希望在由许多破折号组成的“间隙”前后立即捕获大写字母
[A-Z]

所以正则表达式应该包含
([A-Z])-+([A-Z])


要提取两个大写字符,可以使用
re.replace
替换为
$1
$2
,作为替换字符串的一部分。

请将代码格式化为代码。请举例说明输入是什么,以及什么构成“差距”。除此之外,练习正则表达式,例如:这里:特别关注正则表达式中的分组-可能还有非捕获表达式(使用符号(?:…))这是我的输入文件>3ENMA 113E84F72145D181 316 X射线2.350 0.215 0.269无双特异性丝裂原激活蛋白激酶激酶6[智人]的一个示例| | 3 ENMB 3 ENMC 3 ENMD MSYYHHHHHHHHHHDYDPTTENLYFQGAME------------NFEVKADDLEPIMELGGRGAYGVEKMRHVPSGQIMA VKRIATVNKQUEKKKKKKKKKKKKKKKKKKKKKKKKLLmdlLDISMRTvCvTvTvTvTvTvTvTvTvTfyGalfregDvCvTvTvTvTvTvTvTvTvFyKqQdKvTvTvTvTvTvTvTvTvTvKvTvTvKvKvTvTvKvTvKvKvKvTvTvKvKvKvKvKvKvGTDVASFVKLILA------在上面的帖子中给出你的例子。您可以通过添加示例来编辑您的文章。获取匹配对象的开始索引和结束索引,然后使用这些索引来获取您想要的字符-欢迎使用SO。不幸的是,这不是一个讨论论坛或教程服务。请花点时间阅读该页面上的链接和其他链接。你应该花一些时间来练习这些例子。它将向您介绍Python提供的工具,您甚至可以开始获得解决问题的想法。