C/C++编程判断String字符串是否包含某个字符串实现示例

目录
  • 一、C语言风格
  • 二、C++风格

一、C语言风格

在C语言中,字符串存储为字符数组,以'\0'结束。

在C的接口中,有strstr函数,可以在字符串中查找另一个字符串。

char * strstr(const char *str1, const char *str2);

功能为在str1中查找str2,如果存在,那么返回查找到的起始指针,否则返回NULL。

参考代码:

#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++风格

C++的string类提供了字符串中查找另一个字符串的函数find。

其重载形式为:

string::size_type string::find(string &);

功能为在string对象中,查找参数string类型的字符串是否存在,如果存在,返回起始位置。

不存在则返回 string::npos。

参考代码如下:

#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;
}

两种方法在实际编程中都可以使用,效率几乎相同。

不过相对来说使用C++的string效率更高一些,代码也更简便。

以上就是C++编程判断String字符串是否包含某个字符串实现示例的详细内容,更多关于C++判断String字符串是否包含某个字符串的资料请关注我们其它相关文章!

(0)

相关推荐

  • strpos() 函数判断字符串中是否包含某字符串的方法

    用php的strpos() 函数判断字符串中是否包含某字符串的方法 判断某字符串中是否包含某字符串的方法 if(strpos('www.idc-gz.com','idc-gz') !== false){ echo '包含'; }else{ echo '不包含'; } PHP strpos() 函数 strpos() 函数返回字符串在另一个字符串中第一次出现的位置. 如果没有找到该字符串,则返回 false. 语法 strpos(string,find,start) 参数 描述 string 必需

  • C++ string 字符串查找匹配实例代码

    在写C++程序中,总会遇到要从一个字符串中查找一小段子字符串的情况,对于在C中,我们经常用到strstr()或者strchr()这两种方法.而对于C++的string,我们往往会用到find(). C++:#inlcude<string> C: #include<string.h> find():在一个字符串中查找一个指定的单个字符或字符数组.如果找到,就返回首次匹配的开始位置:如果没有查找到匹配的内容,就返回string::npos. find_first_of():在一个目标串

  • C++数据结构链表基本操作示例过程

    目录 首先创建好一个节点 其次创建一个统计节点属性 增加节点 用表头插入的方法插入节点 删除节点 首先创建好一个节点 typedef struct node { int date; struct node* next; }*PNODE; PNODE creatnode(int date ) { PNODE newnode = (PNODE)malloc(sizeof(struct node)); assert(newnode); newnode->next = NULL; newnode->d

  • C语言解决堆栈括号匹配问题示例详解

    目录 首先构建栈 调用匹配函数 代码调用 1.括号匹配问题就是当遇到{( [这些左括号的时 将括号字符入栈 2.当遇到右括号时判断栈顶元素是不是与左括号匹配如果匹配就出栈 如果不匹配就直接结束程序(即括号匹配失败) 首先构建栈 struct STACK { char num[10]; int top; }; struct STACK* creatstack() { struct STACK* stack = new struct STACK; assert(stack); stack->top

  • C++编程归并排序算法实现示例

    归并算法开始首先要对一段要有序的数字进行排序 void merg_sort(int* a, int fbegin, int fend, int sbegin, int send, int* b) { int L = fbegin; int R = sbegin; int cursize = fbegin;//z这里不能重0开始 递归后面是按对应开始位置进行赋值的 while (L <= fend && R <= send) { if (a[L] > a[R]) { b[c

  • c/c++基础简单易懂的快速排序算法

    快速排序就是找一个基准,然后其左边要比他小,右边要比他大 int partition(int* a, int left, int right) { int pivot = left;//找最开始位置为基准 int index = left + 1; for (int i = index; i <= right; i++) { if (a[i] < a[pivot]) { swap(a, i, index); index++; } } swap(a, pivot, index - 1);//in

  • C/C++编程判断String字符串是否包含某个字符串实现示例

    目录 一.C语言风格 二.C++风格 一.C语言风格 在C语言中,字符串存储为字符数组,以'\0'结束. 在C的接口中,有strstr函数,可以在字符串中查找另一个字符串. char * strstr(const char *str1, const char *str2); 功能为在str1中查找str2,如果存在,那么返回查找到的起始指针,否则返回NULL. 参考代码: #include <iostream> #include <string> #include <cstr

  • python判断字符串是否包含子字符串的方法

    本文实例讲述了python判断字符串是否包含子字符串的方法.分享给大家供大家参考.具体如下: python的string对象没有contains方法,不用使用string.contains的方法判断是否包含子字符串,但是python有更简单的方法来替换contains函数. 方法1:使用 in 方法实现contains的功能: site = 'http://www.jb51.net/' if "jb51" in site: print('site contains jb51') 输出结

  • PostgreSQL判断字符串是否包含目标字符串的多种方法

    PostgreSQL判断字符串包含的几种方法: 方式一: position(substring in string): position(substring in string)函数:参数一:目标字符串,参数二原字符串,如果包含目标字符串,会返回目标字符串笫一次出现的位置,可以根据返回值是否大于0来判断是否包含目标字符串 select position('aa' in 'abcd'); position ---------- 0 select position('ab' in 'abcd');

  • Python实现确认字符串是否包含指定字符串的实例

    有时候我们需要在某段字符串或者某段语句中去查找确认是否包含我们所需要的字符串信息, 举例子说. 某段变量是:A= "My name is Clay, and you can get my name" A = "My name is Clay, and you can get my name" myName = "Clay" if myName in A: //do what you want to do 而 我们需要查找A中是否包含Clay字段.

  • javascript 判断字符串是否包含某字符串及indexOf使用示例

    通过判断指定目录实现广告的显示 复制代码 代码如下: if(location.href.indexOf("http://www.jb51.net/codes/")>-1){ alert('ok'); } 复制代码 代码如下: var Cts = "bblText"; if(Cts.indexOf("Text") >= 0 ) { alert('Cts中包含Text字符串'); } indexOf用法: 返回 String 对象内第一次

  • JavaScript判断一个字符串是否包含指定子字符串的方法

    本文实例讲述了JavaScript判断一个字符串是否包含指定子字符串的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码,为String对象定义了一个contains方法用于判断字符串是否包含子字符串,非常有用. if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(obj, start) { for (var i = (start || 0), j = this.length; i < j; i++) {

  • JS中判断某个字符串是否包含另一个字符串的五种方法

    String对象的方法 方法一: indexOf()   (推荐) var str = "123" console.log(str.indexOf("2") != -1); // true indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置.如果要检索的字符串值没有出现,则该方法返回 -1. 方法二:match() var str = "123" var reg = RegExp(/3/); if(str.match(reg

  • Java8中字符串处理库strman-java的使用示例

    介绍 Strmen-java是一个字符串处理工具,你可以通过maven将它引入到项目中.Strmen-java为我们提供了一个非常完整且强大的解决方案,使用它可以解决几乎所有字符串处理场景. 使用 为了能在你的Java应用程序中使用strman-java,可以把这个包下载下来添加到你项目的lib目录中,如果使用的是Maven做项目管理,则只需要在你的pom.xml中加入如下依赖即可: <dependency> <groupId>com.shekhargulati</group

  • js判断一个字符串是否包含一个子串的方法

    本文实例讲述了js判断一个字符串是否包含一个子串的方法.分享给大家供大家参考.具体如下: 在我们前端日常开发中,经常会遇到判断一个字符串中是否包含某个子串,这里我们将去探究一些解决此种需求的方法以及正确的使用它们.理想情况下,我们要找的是一个能匹配我们的目的(if x contains y)的方法,并返回true或false. 一.String.prototype.indexOf和String.prototype.lastIndexOf 这两个方法,可能是我们最容易想到的,如果包含子串,则返回大

  • java 判断字符串是否包含子串的方法

    java 判断字符串是否包含子串的方法 方法一: String str1 = "nihaoksdoksad "; String str2 = "ok "; int total = 0; for (String tmp = str1; tmp != null&&tmp.length()> =str2.length();){ if(tmp.indexOf(str2) == 0){ total ++; } tmp = tmp.substring(1)

随机推荐