Is there any C function to check if string s2 exists in s1?
s1: "CN1 CN2 CN3" s2: "CN2" or "CG2"
s1 is fixed, and I want to check whether variants of s2 exists in s1 or not.
I am using C not C++.
您可以使用strstr:
#include <string.h>
if (strstr(s1, s2) != NULL)
{
// s2 exists in s1
}
您可以使用strstr
. 请参阅strstr 文档
function strstr
char * strstr ( const char * str1, const char * str2 );
在 str 指向的字节串中查找字节串 substr 的第一次出现。
示例用法如下所示:
const char *s1 = "CN1 CN2 CN3";
if (strstr(s1, "CN2") == NULL) //^^!=NULL means exist
{
//does not exist
}
正如其他人所提到的,您应该使用 strstr()。由于您提到您使用的是 C 而不是 C++,因此添加了 strstr() 的 GNU C 文档的链接,但是,此函数的 C++ 文档也适用于 C。