实现一个方法,接受一个字符串和一个子窜作为参数,统计子串在字符串中出现的次数并返回结果
时间: 2024-05-06 12:19:35 浏览: 7
以下是Python语言的实现:
```python
def count_substring(string, sub_string):
count = 0
start = 0
while True:
start = string.find(sub_string, start) + 1
if start > 0:
count += 1
else:
return count
```
该方法使用了字符串的 `find()` 方法来查找子串在字符串中的位置,然后每次更新起始位置继续查找,直到找不到为止。如果找到了,就增加计数器的值。最后返回计数器的值即可。
相关问题
java实现一个方法,接受一个字符串和一个子串中出现的次数并返回结果
以下是Java代码实现:
```java
public static int countSubstring(String str, String subStr) {
int count = 0;
int index = 0;
while ((index = str.indexOf(subStr, index)) != -1) {
count++;
index += subStr.length();
}
return count;
}
```
该方法接受两个参数,分别是字符串和子串。它使用 indexOf() 方法来查找子串在字符串中出现的位置,每找到一次就增加计数器,并继续查找下一个位置,直到找不到为止。最终,该方法返回计数器的值,即子串在字符串中出现的次数。
输入一个字符串和子串,统计子串在该字符中出现次数
以下是 Python 代码实现:
```python
def count_substring(string, sub):
count = 0
start = 0
while True:
start = string.find(sub, start) # 从 start 开始查找子串 sub
if start == -1: # 若没有找到,则退出 while 循环
break
count += 1
start += 1 # 从下一个字符开始继续查找
return count
```
这个函数接受两个字符串作为参数:`string` 表示原始的字符串,`sub` 表示要查找的子串。
函数中定义了一个 `count` 变量来记录子串出现的次数,初始值为 0。另外,还定义了一个 `start` 变量来记录查找的起始位置,初始值为 0。
接下来进入一个 while 循环。在循环中,我们使用 `string.find(sub, start)` 方法来在 `string` 中查找子串 `sub`,其中 `start` 参数表示查找的起始位置。如果没有找到子串,`string.find()` 方法会返回 -1,此时退出 while 循环。如果找到了子串,那么我们就将 `count` 加一,并将 `start` 设置为下一个字符的位置,即 `start += 1`。
最后返回 `count` 即可。