蛮力字符串匹配c语言
时间: 2023-06-21 07:24:04 浏览: 56
以下是一个简单的蛮力字符串匹配算法的 C 语言实现,它可以用于在一个字符串中查找另一个字符串的出现位置:
```c
#include <stdio.h>
#include <string.h>
int brute_force_match(char* str, char* pattern)
{
int str_len = strlen(str);
int pattern_len = strlen(pattern);
int i, j;
for (i = 0; i <= (str_len - pattern_len); i++) {
for (j = 0; j < pattern_len; j++) {
if (str[i+j] != pattern[j]) {
break;
}
}
if (j == pattern_len) {
return i;
}
}
return -1;
}
int main()
{
char* str = "hello, world!";
char* pattern = "world";
int index = brute_force_match(str, pattern);
if (index != -1) {
printf("Pattern found at index %d\n", index);
} else {
printf("Pattern not found\n");
}
return 0;
}
```
该算法的基本思路是,从主串的第一个字符开始,依次和模式串的每个字符进行比较,如果匹配失败,则从主串的下一个字符开始重新匹配。如果匹配成功,则返回主串中匹配的起始位置。如果整个主串都匹配失败,则返回 -1。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)