21xrx.com
2024-11-05 18:51:01 Tuesday
登录
文章检索 我的文章 写文章
C++中如何判断一个字符串是另一个字符串的子串?
2023-07-06 00:03:13 深夜i     --     --
C++ 判断 字符串 子串

在C++中,我们可以通过使用string类来判断一个字符串是否为另一个字符串的子串。string类提供了一个find()函数,可以返回一个子字符串在父字符串中出现的位置,如果没有找到该子字符串,则返回一个特殊值string::npos。

以下是一个简单的示例程序,演示如何使用find()函数来判断一个字符串是否为另一个字符串的子串:


#include<iostream>

#include<string>

using namespace std;

int main()

{

  string str1 = "Hello, World!";

  string str2 = "World";

  // 在str1中查找str2

  size_t pos = str1.find(str2);

  if (pos != string::npos) // 如果找到了该子字符串

  

    cout << str2 << " is a substring of " << str1 << endl;

  

  else // 如果没有找到该子字符串

  

    cout << str2 << " is not a substring of " << str1 << endl;

  

  return 0;

}

在上面的示例程序中,我们将字符串"Hello, World!"和"World"存储在两个不同的变量str1和str2中。然后,我们使用find()函数在str1中查找str2,如果发现str2是str1的子串,则打印一条成功的消息,否则打印一条失败的消息。

需要注意的是,find()函数返回的是一个无符号整型值,即size_t类型。因此,我们在比较pos和string::npos时,需要使用无符号整型变量pos作为操作数。

总之,使用find()函数是判断一个字符串是否为另一个字符串的子串的一种简单而有效的方法,可以帮助我们快速定位和处理字符串中的关键单词和短语。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复