我有一个DNA序列分析程序的用户输入,我想检查输入是否实际上是一个序列。它包含A、C、T、G或a、c、t、g。
我曾想过实现一个正则表达式,re.search如果找到正确的格式,www.example.com将返回True。如果是假的,我可以再次请求输入,等等。就像这样:
input = "ATGGCAAT"
>>True
input = "atg"
>>True
input = "AATG!4"
>>False
input = "this input contains all the char but is in the wrong format"
>>False
我也考虑过使用一种消极的前瞻,这种前瞻将与正确格式以外的任何东西相匹配。
3条答案
按热度按时间z2acfund1#
您需要检查字符串是否包含ACTG的小写或大写,并且只有它们,因此您将表达式锚定在行的开头和结尾:
lymnna712#
您可以使用字符串操作符的开始和结束,然后一次或多次指定所需的字符,如下所示:
你可以在这里找到你的例子:https://regex101.com/r/CgiTEL/1
quhf5bfb3#
非Regex解决方案。此函数将检查字符串,如果有任何字符与指定列表中的字符不匹配,则返回False,否则将返回True