查找字符串最后一个相匹配的串,不存在返回NULL, 存在返回出现的位置指针
2010-12-16 15:12
411 查看
//查找字符串最后一个相匹配的串,不存在返回NULL, 存在返回出现的位置
//s1 目标串 s2 子串
char *strRstr( const char *s1, const char *s2 )
{
int len2 = 0;
if ( !(len2 = strlen(s2)) )
{
return (char*)s1;
}
char* pcRet = NULL;
size_t len1 = 0;
len1 = strlen(s1);
s1=s1+(len1-1);
for (size_t i=len1 ; i>0; i-- , --s1)
{
if ( *s1 == *s2 && strncmp( s1, s2, len2 )==0 )
{
pcRet = (char *)s1;
break;
}
}
return pcRet;
}
//s1 目标串 s2 子串
char *strRstr( const char *s1, const char *s2 )
{
int len2 = 0;
if ( !(len2 = strlen(s2)) )
{
return (char*)s1;
}
char* pcRet = NULL;
size_t len1 = 0;
len1 = strlen(s1);
s1=s1+(len1-1);
for (size_t i=len1 ; i>0; i-- , --s1)
{
if ( *s1 == *s2 && strncmp( s1, s2, len2 )==0 )
{
pcRet = (char *)s1;
break;
}
}
return pcRet;
}
相关文章推荐
- [置顶] 在字符串中查找一个特定的字符第一次出现的位置,并返回字符所在位置;如果没有则返回NULL。
- C语言 编写字符串操作函数strrchr,在字符串中查找目标字符最后一次出现的位置,返回指向这次位置的指针。
- 全国计算机等级二级C++第四章习题编程题6 :编写一个函数 char *strfind(char *s, char *t),用于查找字符串t在字符串s中最右边出现的位置,如果没有找到则返回NULL.
- 【c语言】模拟实现strchr函数,功能:在一个字符串中查找一个字符第一次出现的位置,如果没有出现返回NULL
- 编写一个函数 char *strfind(char *s, char *t),用于查找字符串t在字符串s中最右边出现的位置,如果没有找到则返回NULL.
- 找 一个字符串 在别外一个字符串出现的位置,如果存在 就返回它所在位置的值 ,不存在就返回-1 (不使用系统自带的函数)
- C语言rindex()函数:查找字符串并返回最后一次出现的位置
- 关于SQL中查找字符串的总结 PATINDEX CHARINDEX 返回字符串中第N次出现指定字符串位置
- 给定字符串查找子串,返回子串出现的位置
- 对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(从0开始)。如果不存在,则返回 -1。
- 对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(从0开始)。如果不存在,则返回 -1。
- 对于一个有序数组,我们通常采用二分查找的方式来定位某一元素,请编写二分查找的算法,在数组中查找指定元素。 给定一个整数数组A及它的大小n,同时给定要查找的元素val,请返回它在数组中的位置(从0开始),若不存在该元素,返回-1。若该元素出现多次,请返回第一次出现的位置。
- [置顶] 在字符串中查找一个特定的字符最后一次出现的位置,并返回字符所在位置。
- 查找字符串中特定字符串出现的位置,返回这个位置的索引
- 【C语言】模拟实现strchr函数.即在一个字符串中查找一个字符第一次出现的位置并返回
- C语言index()函数:查找字符串并返回首次出现的位置
- 函数strstr代码举例——从字符串haystack中寻找needle第一次出现的位置(不比较结束符NULL),没有就返回NULL。
- 在pArray缓冲区,查找subString字符串,如存在,返回当前位置,否则返回-1
- 查找一个字符串在另一个字符串中出现的所有位置
- 算法实验一:二分查找算法改进: 当搜索元素x不存在时,返回小于x的最大元素位置i和大于x的最小元素位置j. 当搜索元素在数组中时,i和j相同,均为x在数组中的位置。