📅  最后修改于: 2023-12-03 14:51:25.922000             🧑  作者: Mango
在 C++ 中,查找一个字符串中的子字符串可以使用以下两种方法:
string 类提供了一个 find 函数,用于查找一个字符串中是否包含另一个字符串,若包含则返回其第一个出现的位置,否则返回 string::npos。使用示例代码如下:
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "Hello, world!";
string sub = "world";
if (str.find(sub) != string::npos) {
cout << "Found" << endl;
} else {
cout << "Not found" << endl;
}
return 0;
}
代码执行输出结果为:Found
。
C 库函数 strstr
可以用于查找一个字符串中是否包含另一个字符串,如果包含则返回其第一个出现的位置,否则返回 NULL
。使用示例代码如下:
#include <iostream>
#include <cstring>
using namespace std;
int main() {
const char* str = "Hello, world!";
const char* sub = "world";
if (strstr(str, sub) != NULL) {
cout << "Found" << endl;
} else {
cout << "Not found" << endl;
}
return 0;
}
代码执行输出结果为:Found
。
以上两种方法都可以用于查找一个字符串中是否包含另一个字符串。在实际使用中,建议使用 string::find
函数,因为它更加方便和易用。