我知道在python中有一个in
运算符,它可以用来检查字符串中是否存在任何子字符串或字符。我想通过检查每个字符串(长度子字符串)来做到这一点。下面的代码是唯一的方式,还是有任何其他方式,我可以做到这一点?查找子字符串的方法
m = "college"
s = "col"
lm = len(m)
ls = len(s)
f = 0
for i in range(lm):
if (i+ls) <= lm:
if s == m[i:(i+ls)]:
global f
f = 1
break
if f:
print "present"
else:
print "not present"
什么,我这里做的是,如果我的子字符串为col
,我计划从开始移动到主字符串的结尾检查长度子串子串的字符串,并返回true或不。
col
oll
lle
leg
ege
你在寻找一种更好的/不同的方式来编写代码或更聪明的算法吗?从字面上看,显而易见的“实现”搜索的另一种方式是使用'in'运算符。有很多方法可以用不同的方式编写代码,其中一些方法在回复中指出。正如我的答案中指出的那样,您还可以使用更智能的算法来搜索子字符串。请澄清。 – user4815162342 2013-05-11 19:56:51
我读了下来的解决方案,这是我的预期...如果你可以提供我更有效的算法PLZ做说兄弟会对我有用.... – abu 2013-05-12 12:15:04
我的答案确实如此,但你需要自己编码。 – user4815162342 2013-05-12 21:08:48