如何将 PROSITE 正则表达式转换为 Python 正则表达式(自学40天)

如何将 PROSITE 正则表达式转换为Python 正则表达式

PROSITE(http://prosite.expasy.org/)是蛋白质域、蛋白质家族和蛋白质功能位点的资源库,由签名模式(即正则表达式)或配置文件(即位置特异性氨基酸的权重和间隙罚分组成的表)两种方法表示。 PROSITE 使用了正则表达语法(可参阅 http: //prosite.expasy.org/scanprosite/scanprosite-doc.html#pattern_syntax) ,但是和 Python 中使用的不太一样。 如果实现相互之间的自动转换将会十分便利。 可以使用下面的简单脚本可以执行此任务 :

pattern = '[DEQN]-x-[DEQN] (2)-C-x(3,14) -C-x(3,7)\ -C-x- [DN] -x (4) - [FY] -x-C' 
pattern = pattern.replace('{','[^') 
pattern = pattern.replace('}',']') 
pattern = pattern.replace('(','{') 
pattern = pattern.replace(')','}') 
pattern = pattern.replace ('-','') 
pattern = pattern.replace('x','.') 
pattern = pattern.replace('>','$' ) 
pattern = pattern.replace('<','^') 
print(pattern) 

PROSITE 正则表达式中的示例对应到钙结合的类 EGF 结构域签名 (PROSITE ID: EGF_CA; PROSITE AC: PS01187) 。

你可能感兴趣的:(如何将 PROSITE 正则表达式转换为 Python 正则表达式(自学40天))