C/C++判断字符串是否包含某个字符串
C风格
#include <iostream> #include <string> #include <cstring> using namespace std; int main() { string a="abcdefghigklmn"; char *b="def"; char *c="123"; if(strstr(a.c_str(), b) == NULL)//在a中查找b,如果不存在, cout << "not found\n";//输出结果。 else//否则存在。 cout <<"found\n"; //输出结果。 if(strstr(a.c_str(), c) == NULL)//在a中查找b,如果不存在, cout << "not found\n";//输出结果。 else//否则存在。 cout <<"found\n"; //输出结果。 return 0; }
C++风格
#include <iostream> #include <string> using namespace std; int main() { string a="abcdefghigklmn"; string b="def"; string c="123"; string::size_type idx; idx=a.find(b);//在a中查找b. if(idx == string::npos )//不存在。 cout << "not found\n"; else//存在。 cout <<"found\n"; idx=a.find(c);//在a中查找c。 if(idx == string::npos )//不存在。 cout << "not found\n"; else//存在。 cout <<"found\n"; return 0; }