在C++中,std::strstr(是用于字符串处理的预定义函数。 string.h是字符串函数所需的头文件。
此函数将两个字符串s1和s2作为参数,并在字符串s1中找到子字符串s2的第一个匹配项。匹配过程不包括终止的null-characters('\ 0'),但函数在那里停止。
用法:
char *strstr (const char *s1, const char *s2); 参数: s1:This is the main string to be examined. s2:This is the sub-string to be searched in s1 string.
返回值:此函数返回一个指针,该指针指向s1中找到的s2的第一个字符,如果s1中不存在s2,则返回空指针。如果s2指向空字符串,则返回s1。
例:
// CPP program to illustrate strstr()
#include <string.h>
#include <stdio.h>
int main()
{
// Take any two strings
char s1[] = "GeeksforGeeks";
char s2[] = "for";
char* p;
// Find first occurrence of s2 in s1
p = strstr(s1, s2);
// Prints the result
if (p) {
printf("String found\n");
printf("First occurrence of string '%s' in '%s' is '%s'", s2, s1, p);
} else
printf("String not found\n");
return 0;
}
输出:
String found First occurrence of string 'for' in 'GeeksforGeeks' is 'forGeeks'
应用程序:用另一个替换字符串
在此示例中,借助于strstr()函数,我们首先搜索s1中STL子字符串的出现,然后用Strings替换该单词。
// CPP program to illustrate strstr()
#include <string.h>
#include <stdio.h>
int main()
{
// Take any two strings
char s1[] = "Fun with STL";
char s2[] = "STL";
char* p;
// Find first occurrence of s2 in s1
p = strstr(s1, s2);
// Prints the result
if (p) {
strcpy(p, "Strings");
printf("%s", s1);
} else
printf("String not found\n");
return 0;
}
输出:
Fun with Strings
相关用法
注:本文由纯净天空筛选整理自 strstr() in C/C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。