如何判断一个字符串中是否包含另一个字符串不使用官方API请给出代码
时间: 2023-09-10 09:08:02 浏览: 60
C#判断一个字符串是否包含另一个字符串的方法
以下是一个使用暴力匹配算法判断一个字符串中是否包含另一个字符串的示例代码,不使用官方API:
```python
def str_contains(str1, str2):
i = 0 # str1的遍历指针
j = 0 # str2的遍历指针
while i < len(str1) and j < len(str2):
if str1[i] == str2[j]: # 如果当前字符匹配,则继续匹配下一个字符
i += 1
j += 1
else:
i = i - j + 1 # 如果不匹配,则i回退到上一次匹配的下一个位置
j = 0
if j == len(str2): # 如果匹配成功,则说明str1包含str2
return True
else:
return False
```
示例代码中的思路和上文中描述的暴力匹配算法一致,具体实现采用了两个指针i和j分别遍历两个字符串。如果当前字符匹配,则两个指针同时往后移动,否则i回退到上一次匹配的下一个位置,j重置为0继续匹配。如果j遍历到了str2的末尾,则说明str1包含str2,返回True;否则,返回False。
阅读全文