阅读量:0
index
函数在 C++ 字符串处理中主要有以下应用:
查找子字符串:使用
index
函数可以查找一个字符串是否包含另一个子字符串,以及子字符串的位置。例如:#include <iostream> #include <cstring> int main() { const char* str = "Hello, World!"; const char* subStr = "World"; size_t pos = std::string(str).find(subStr); if (pos != std::string::npos) { std::cout << "子字符串 \"" << subStr << "\" 在字符串 \"" << str << "\" 中的位置是: " << pos << std::endl; } else { std::cout << "子字符串 \"" << subStr << "\" 不在字符串 \"" << str << "\" 中" << std::endl; } return 0; }
在这个示例中,
std::string(str).find(subStr)
将查找str
中是否包含subStr
,并返回其位置(从 0 开始)。如果未找到子字符串,则返回std::string::npos
。提取子字符串:通过
index
函数可以从一个字符串中提取子字符串。例如:#include <iostream> #include <cstring> int main() { const char* str = "Hello, World!"; const char* subStr = "World"; size_t pos = std::string(str).find(subStr); if (pos != std::string::npos) { std::string extracted = str + pos; std::cout << "提取的子字符串 \"" << extracted << "\"" << std::endl; } else { std::cout << "未找到子字符串 \"" << subStr << "\"" << std::endl; } return 0; }
在这个示例中,如果找到了子字符串
subStr
,则通过str + pos
计算子字符串的起始位置,并使用std::string
构造函数创建一个新的子字符串。