c++判断string是否为另一个string的一部分
时间: 2024-11-09 18:20:36 浏览: 18
在 C++ 中,你可以使用 `std::string` 类的成员函数 `find()` 或者 `substr()` 来判断一个字符串是否是另一个字符串的一部分。以下是两种常见方法:
1. **使用 find() 函数**:
```cpp
#include <iostream>
#include <string>
bool isSubstring(const std::string& mainStr, const std::string& subStr) {
if (mainStr.find(subStr) != std::string::npos)
return true;
else
return false;
}
int main() {
std::string main = "Hello World";
std::string sub = "World";
if (isSubstring(main, sub))
std::cout << sub << " is a substring of " << main << std::endl;
else
std::cout << sub << " is not a substring of " << main << std::endl;
return 0;
}
```
如果 `find()` 返回的结果不是 `std::string::npos`(表示未找到),则说明找到了子串。
2. **使用 substr() 函数**:
```cpp
bool isSubstring(const std::string& mainStr, const std::string& subStr) {
if (mainStr.substr(0, subStr.length()) == subStr)
return true;
else
return false;
}
// 使用方法同上
```
这里我们检查主字符串从开始到子字符串长度的部分是否等于子字符串。
阅读全文