串的模式匹配简单算法
2008-09-11 19:39
288 查看
/*
*函数功能
* 求字符串str中从pos位置开始第一次出现pat的位置
*输入参数
* char *str:要查找的字符串
* char *pat:模式串
* int pos:开始位置
*返回值
* 返回字符串str中从pos位置开始第一次出现pat的位置,如果从pos位置开始不存在pat则返回-1
*
*/
int simpleIndex(char *str, char *pat, int pos)
{
int i=pos, j=0;
if(pos<0 || pos>strlen(str)-strlen(pat)) //pos位置不合法
{
return -1;
}
while(i<strlen(str) && j<strlen(pat))
{
if(str[i] == pat[j])
{
++i;
++j;
}
else
{
i = i-j+1;
j = 0;
}
}
if(j == strlen(pat))
{
return i-j;
}
return -1;
}
*函数功能
* 求字符串str中从pos位置开始第一次出现pat的位置
*输入参数
* char *str:要查找的字符串
* char *pat:模式串
* int pos:开始位置
*返回值
* 返回字符串str中从pos位置开始第一次出现pat的位置,如果从pos位置开始不存在pat则返回-1
*
*/
int simpleIndex(char *str, char *pat, int pos)
{
int i=pos, j=0;
if(pos<0 || pos>strlen(str)-strlen(pat)) //pos位置不合法
{
return -1;
}
while(i<strlen(str) && j<strlen(pat))
{
if(str[i] == pat[j])
{
++i;
++j;
}
else
{
i = i-j+1;
j = 0;
}
}
if(j == strlen(pat))
{
return i-j;
}
return -1;
}
相关文章推荐
- 使用Python语言写一个简单的KMP模式匹配算法实现
- 字符串模式匹配的简单算法
- USTC机试——简单模式匹配算法(非kmp)
- 串的模式匹配算法之一:简单算法
- 字符串简单模式匹配算法与IndexOf方法比较
- 简单讲解KMP单模式匹配与AC算法多模式匹配(KMP篇)
- 简单字符串模式匹配算法的C++实现
- 简单模式匹配算法
- 字符串之简单模式匹配算法(BF)
- 简单模式匹配算法和KMP模式匹配算法
- 转载网络上最简单易懂的KMP模式匹配算法——外加代码实现
- 线性表-串:KMP模式匹配算法
- 模式匹配之sift--- sift图像特征提取与匹配算法代码
- 串的模式匹配算法:BF算法与KMP算法
- 【转】WAF(Web Application Firewall)中的多模式匹配算法论文
- 【算法与数据结构】字符串模式匹配
- 算法一:字符串的模式匹配
- BM模式匹配算法-原理(图解)
- 串的操作(一) BruteForce (BF)算法 朴素的模式匹配
- KMP模式匹配算法及改进