C++ string查询子字符串,未查询到的返回值
时间: 2024-10-28 11:14:55 浏览: 20
C++常用字符串分割方法实例汇总
5星 · 资源好评率100%
在C++中,`std::string` 类型提供了内置的 `find()` 函数用于查找子串。如果你想要查找一个子串是否存在于`std::string`对象中,可以使用这个函数。`find()` 函数的基本语法如下:
```cpp
size_t find(const string& str, size_t pos = 0) const;
```
其中,`str`是你想要查找的子串,`pos`是开始搜索的位置,默认从字符串开头(`0`)开始。如果找到了子串,它会返回子串的第一个字符的索引(从0开始),如果没找到则返回`npos`(通常是一个常量`std::string::npos`,其值大于所有有效的字符串长度,表示找不到)。
例如:
```cpp
std::string mainString = "Hello, world!";
size_t index = mainString.find("world");
if (index != std::string::npos)
{
std::cout << "Substring found at position: " << index << std::endl;
}
else
{
std::cout << "Substring not found." << std::endl;
}
```
这里,如果找到了"world",`find()`将返回6,如果没有找到,则输出"Substring not found."。
阅读全文