python如何连续查找字符串_在python中查找两个字符串的所有公共连续子字符串

修改了几行,增加了几行

如果找不到任何子字符串,则修改是answer=“NULL”的默认返回。在

已添加

继续搜索,直到得到NULL并存储到列表def longestSubstringFinder(string1, string2):

answer = "NULL"

len1, len2 = len(string1), len(string2)

for i in range(len1):

match = ""

for j in range(len2):

if (i + j < len1 and string1[i + j] == string2[j]):

match += string2[j]

else:

if (len(match) > len(answer)): answer = match

match = ""

return answer

mylist = []

def call():

s1 = 'Today is a good day, it is a good idea to have a walk.'

s2 = 'Yesterday was not a good day, but today is good, shall we have a walk?'

s1 = s1.lower()

s2 = s2.lower()

x = longestSubstringFinder(s2,s1)

while(longestSubstringFinder(s2,s1) != "NULL"):

x = longestSubstringFinder(s2,s1)

print(x)

mylist.append(x)

s2 = s2.replace(x,' ')

call()

print ('[%s]' % ','.join(map(str, mylist)))

输出

^{pr2}$

你的产出差异common = ['today is', 'a good day', 'is', 'a good', 'have a walk']

你对秒的期望是“错误的,正如你在s2中看到的,只有一个是”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值