Python正则表达式在第一个“后停止”|&引用;比赛
我希望使用的是Python正则表达式在第一个“后停止”|&引用;比赛,python,regex,Python,Regex,我希望使用的是AXXATGXG。使用分组结构(…)而不是字符类[…]围绕备选方案: p = re.compile("[AG].{2}[ATG|ATA|AAG].{1}G") regex_result = p.search('ZZZAXXATGXGZZZ') regex_result.group() 'AXXATG' (?:ATG | ATA | AAG)匹配3个序列:aATG,或ATA或AAG。[ATG | ATA | AAG]字符类匹配1个字符,可以是A、T、G或 注意,{1}是多余的,可以
AXXATGXG
。使用分组结构(…)
而不是字符类[…]
围绕备选方案:
p = re.compile("[AG].{2}[ATG|ATA|AAG].{1}G")
regex_result = p.search('ZZZAXXATGXGZZZ')
regex_result.group()
'AXXATG'
(?:ATG | ATA | AAG)
匹配3个序列:aATG
,或ATA
或AAG
。[ATG | ATA | AAG]
字符类匹配1个字符,可以是A
、T
、G
或
注意,{1}
是多余的,可以删除
Python:
p = re.compile("[AG].{2}(?:ATG|ATA|AAG).G")
^^^^^^^^^^^^^^^
请参见美丽的解释。你救了我一天!
import re
p = re.compile("[AG].{2}(?:ATG|ATA|AAG).G")
regex_result = p.search('ZZZAXXATGXGZZZ')
print(regex_result.group())
# => AXXATGXG