例如a = 'abc123def'
b = 'abcdef'我想要一个可以判断b是否在a中的函数。contains(a,b)=Trueb的表示中也允许有ps gap,egb='abc_def'但不允许使用正则表达式。
3 回答
婷婷同学_
TA贡献1844条经验 获得超8个赞
如果你想做的是检查 是否b
是 的子序列a
,你可以这样写:
def contains(a, b):
n, m = len(a), len(b)
j = 0
for i in range(n):
if j < m and a[i] == b[j]:
j += 1
return j == m
墨色风雨
TA贡献1853条经验 获得超6个赞
尝试使用列表理解:
def contains(main_string, sub_string): return all([i in main_string for i in sub_string])
注意:'all' 是一个内置函数,它接受一个可迭代的布尔值,如果全部为 True 则返回 try。
aluckdog
TA贡献1847条经验 获得超7个赞
def new_contained(a,b):
boo = False
c = [c for c in a]
d = [i for i in b]
if len(c)<=len(d):
for i in c:
if i in d:
boo = True
return boo
添加回答
举报
0/150
提交
取消