c++ 怎样判断字符串string里面是否含有某个字符串

如题所述

既然是用C++,还是不要自己实现算法了吧,可以用C++标准库的string类的成员函数来解决。把需要判断的字符串作为一个string对象,然后调用这个string对象的find成员函数,find函数可以查找某个字符串是否在这个string对象中。然后通过对find函数返回结果的判断,就可以知道这个string对象里面是否含有某个字符串。如果string对象没有包含这个子字符串,find成员函数就会返回一个string::npos值,如果找到了子字符串,则会返回一个string::size_type类型的下标位置,这个下标位置是子字符串在string对象里的起始下标。所以这个问题实际上就是判断find成员函数的返回值是否等于string::npos咯。
温馨提示:内容为网友见解,仅供参考
无其他回答

c++ 怎样判断字符串string里面是否含有某个字符串
int main(){ string str = "afdsdfs_hello_sdfas#@!";string str1 = "hello";string::size_type idx = str.find( str1 );if ( idx != string::npos ){ cout << "字符串含有“<< str1 << "\\n";} else { cout << "字符串没有" << str1 << "\\n";} } 解析:string::...

c++ 怎样判断字符串string里面是否含有某个字符串
在C++的STL中,操作字符串的类为string。string类的成员函数find有一种重载为 int find(const char *s,int pos = 0) const;功能为从pos开始查找字符串s在当前串中的位置,pos默认值为0,即从开始查找。find的定义形式,调用形式,与indexof方法均相同,所以在C++中,可以使用string的find函数,实现...

c++ 怎样判断字符串string里面是否含有某个字符串
include <iostream>#include <string>using namespace std;int main(){ \/\/ 01234567890123456789 string str1("abcdefghijklmnopqrst"); string::size_type pos = str1.find("klmnop"); cout << pos << endl; return 0;}代码返回匹配的字符串第一个字符的位置,比如上面代码返回...

c++ 怎样判断字符串string里面是否含有某个字符串
然后通过对find函数返回结果的判断,就可以知道这个string对象里面是否含有某个字符串。如果string对象没有包含这个子字符串,find成员函数就会返回一个string::npos值,如果找到了子字符串,则会返回一个string::size_type类型的下标位置,这个下标位置是子字符串在string对象里的起始下标。所以这个问题实际上...

c++ 怎样判断字符串string里面是否含有某个字符串
第一个入参是要找的字符,第二个入参是从第几个字符开始找(针对这个问题可以设置为0),返回的就是以0为起始位置的该字符所在位置的序号。返回值大于等于0即表示存在该字符。将std::string看做一个字符串,直接用字符串的处理方法strstr也可以的,返回非空即表示存在该字符。

用C++编程一个函数实现一个字符串是否包含另一个字符串?
首先为字符串b腾出空位 int len=strlen(b);for(int i=0;i<len;i++){ (a+10+len+i) = *(a+10+i);} 然后将b插入到腾出来的空位即可 for(int j=0;j<len;j++){ (a+10+j) = b[j];} 这个是最原理的东西,如果你能理解这个,那么后两个for循环其实可以合并为一个,全部代码为 ...

c++ 怎样判断字符串string里面是否含有某个
include <iostream>#include <string>using namespace std;int main(){string str = "afdsdfs_hello_sdfas#@!";string str1 = "hello";string::size_type idx = str.find( str1 );if ( idx != string::npos ){cout << "字符串含有“<< str1 << "\\n";}else{cout << "字符串没...

c++ string怎样判断字符串里面是否含有某个字符
string s = "abc";if (s.find('a') != string::npos) \/\/找到{}

C++判断字符串中是否含有某个子字符串
既然是用C++,这个问题当然要用C++标准库来解决咯,C++标准库有一个string类,把需要查找判断的字符串赋值给一个string对象,然后调用这个string对象的find成员函数,查找子字符串是否存在这个string对象中,如果这个string对象没有包含那个子字符串,find成员函数就会返回一个string::npos值,如果找到了子字符...

c++怎样判断输入的字符数组是否包含某个字符串(编写时给定字符串)?
自写的一个函数,试下,如果包含,则返回在主串中的起始位置,如果不包含,则返回-1int my_find(char* source, char* target)\/\/source是主串,target是子串{int i,j;int s_len=strlen(source);int t_len=strlen(target);if(t_len>s_len){return -1;}for(i=0;i<=s_len-t_len;i++...

相似回答