因此,我正在尝试创建一个正则表达式子句,它可以检测 'ACTG' 字符的任意组合,并将其视为有效。而其他任何内容 - 包括 'ACTG' 和其他一些字符的组合都是无效的。
最终,我会将它从 while 循环中取出,这只是为了测试目的。现在我相信只要它以 a、c、t 或 g 开头,它就说它是有效的....
正则表达式中是否有比匹配更适合的函数?
import re
while (True):
DnaString = str(input('enter your polynucleotide chain code hooblah'))
if (re.match('([ACTG]+[ACTG]*)', DnaString, flags=0)):
#if re.search('^ACTG', DnaString) != -1:
print ("valid chain.")
else: #(re.search('^[ACTG]+[ACTG]*$', DnaString) == -1):
print("invalid chain, please check your input.")
if (DnaString.find("end") != -1):
print("ohokaybye.")
break
请您参考如下方法:
为什么不只是
if all(c in 'ACGT' for c in DnaString):
# Do success
else:
# Do failure
