Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python正则表达式在第一个“后停止”|&引用;比赛_Python_Regex - Fatal编程技术网

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个序列:a
ATG
,或
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