// string 类型的常用方法 // string 与 char* 的区别 #include using namespace std; int main() { string s1("ism "); string s2("hhhsishg"); // 拼接 // s1 += s2; s1.append(s2); /****************** // 修改指定位置的内容 s1[0] = 'l'; // 替换 // int c_pos = s1.find('h'); // 查找字符 h 的位置 // s1.replace(c_pos, 1, "d"); // 替换字符 h 为 d // 替换所有的 h 为 d int pos = s1.find('h'); cout << "h pos = " << pos << endl; // while (pos != string::npos) // npos 表示查找失败 while (pos != -1) // -1 表示查找失败 { s1.replace(pos, 1, "d"); pos = s1.find("h", pos + 1); } ******************/ // 查找 is 第一次和最后一次出现的位置 int is_start = s1.find("is"); int is_end = s1.rfind("is"); cout << "is_start = " << is_start << endl; cout << "is_end = " << is_end << endl; // 查找 is 的长度 string s3("is"); cout << "is 的长度: " << s3.size() << endl; // 清空内容(保留开始和结束的 is) // s1.replace(is_start, is_end - is_start + 2, ""); s1.erase(is_start + 2, is_end - is_start - 2); cout << s1 << endl; return 0; }