【发布时间】:2019-03-28 10:47:16
【问题描述】:
我正在尝试编写一个程序,该程序将搜索一系列字符串并在找到子字符串的任何部分时返回 true。
比如说我感兴趣的子串是:
GATCGATC
程序应为以下情况返回 True:
GGTGGATCGATC
并且还应该返回 true for(因为它以 GATC 结尾):
GGTGTTTTGATC
到目前为止我有:
def matchpat(str1, str2):
'''Find a pattern in a string'''
if str1 in str2:
return True
else:
return False
此函数有效,但只有当整个模式存在时,它才会返回 False 部分匹配。
【问题讨论】:
-
部分匹配,特别是任何阈值?因为匹配的字母也是部分匹配
-
请澄清您的任务:“找到子字符串的任何部分” - 该部分应该有多大?一个字母算作字符串的一部分吗?或者我们是否看到“GATCGATC”重复“GATC”子字符串这一事实?
-
请发布
True和False案例的样本。 -
所以句子
This is not working也应该返回TRUE,因为它以GATCGATC的子串结尾? (句子中包含字母G,是GATCGATC的子串) -
是的,如果字符串以部分匹配结尾,即使是单个 G,那么它应该返回 True。
标签: python python-3.x