if(idx ==string::npos)//不存在。cout <<"not found\n";else//存在。cout <<"found\n";return0; } AI代码助手复制代码 两种方法在实际编程中都可以使用,效率几乎相同。 不过相对来说使用C++的string效率更高一些,代码也更简便。 到此,关于“C/C++编程怎么判断String字符串是否包含某个字符串”的学习就...
如果找到了子串,则返回一个指向子串在主字符串中首次出现的位置的指针;如果未找到,则返回 NULL。
C/C++判断字符串是否包含某个子字符串 1C风格23#include <iostream>4#include <string>5#include <cstring>6usingnamespacestd;7intmain()8{9stringa="abcdefghigklmn";10char*b="def";11char*c="123";1213if(strstr(a.c_str(), b) == NULL)//在a中查找b,如果不存在,14cout <<"not found\n";...
1. 使用库函数 string.h strstr函数 函数名: strstr 功能: 在串中查找指定字符串的第一次出现 用法: char *strstr(char *str1, char *str2); 说明:返回指向第一次出现str2位置的指针,如果没找到则返回NULL。 调用函数,判断返回值是否等于NULL,决定是否输出 如; char *p=".c"; //需要的子串 if(strstr...
if(s[i]==c)返回false,不执行break,执行return 1,直接返回了1。--->这个就是问题所在了。就是匹配了你break了,只要有一个不匹配你就直接return 1。修改如下:for(i=0;i<=strlen(s);i++){ if(s[i]!=c) //不是==,而是!= break;else return 1;} ...
int main(void){ char str1[50], str2[50];printf("please input two strings\n");gets(str1);gets(str2);printf("%s\n%s",str1,str2);printf("\n%d",getsubstrnum(str1,str2));getch();} int getsubstrnum(const char *str1, const char *str2){ const char *p1 = str1;...
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 intcharContainsToChar(char* source,char* target)//source是主串,target是子串 { inti, j; ints_len =strlen(source); ...
j=0; //字串字符重新开始 } if(j == strlen(s)){//如果匹配成功 flag=1; //字串出现 break; } } if(flag==1) printf("%s中包含%s\n",str,s)
4-2字符串abcdab有8个不同子串:abcd、bcda、cdab、ab、bc、cd、da、ab。字符串由数字、字母、下划线组成。一般记为 s=“a1a2···an”(n>=0)。在程序设计中,字符串(string)为符号或数值的一个连续序列,如符号串(一串字符)或二进制数字串(一串二进制数字)。
s1[s[i]]=1; //将字符串s1中出现的每一个字符,均“记录在案”for(i=0;s2[i];i++)if(!(s[s2[i]]))k=0; //若s2中有字符在“记录簿”中未出现,就作记录 if(k)printf("s1包含了s2中的全部字符\n"); //根据是否有记录输出相应记录 else printf("s1未包含s2中的...