C++实现字符串按分割符分割并拼接头尾字符串
### 🍭思路分析 本题需要将输入的字符串按照给定的分割符进行分割,由于字符串中只有两个分割符,我们可以找到这两个分割符的位置,然后提取出分割后的头尾两个子字符串,最后将它们拼接起来输出。 ### 🔧代码实现 ```cpp #include <iostream> #include <string> using namespace std; int main() { string s; char c; // 读取字符串 getline(cin, s); // 读取分割符 cin >> c; // 查找第一个分割符的位置 int firstPos = s.find(c); // 查找第二个分割符的位置 int secondPos = s.find(c, firstPos + 1); // 提取第一个子字符串 string firstPart = s.substr(0, firstPos); // 提取最后一个子字符串 string lastPart = s.substr(secondPos + 1); // 拼接字符串 string result = firstPart + lastPart; // 输出结果 cout << result << endl; return 0; } ``` ### 📝代码解释 1. **输入读取**:使用`getline(cin, s)`读取整行字符串,使用`cin >> c`读取分割符。 2. **分割符位置查找**:使用`find`函数查找第一个分割符的位置,然后从第一个分割符的下一个位置开始查找第二个分割符的位置。 3. **子字符串提取**:使用`substr`函数提取分割后的头尾两个子字符串。 4. **字符串拼接**:将提取的两个子字符串拼接起来。 5. **输出结果**:输出拼接后的字符串。 ### ⚙️进阶使用指南 - **错误处理**:在实际应用中,需要考虑字符串中分割符数量不足或过多的情况,可以添加相应的错误处理代码。 - **性能优化**:对于大规模数据,可以考虑使用更高效的字符串处理算法。 - **扩展功能**:可以扩展代码,支持多个分割符或指定分割次数。 ### 📚相关技术栈推荐 - **C++标准库**:`string`类提供了丰富的字符串处理方法,建议深入学习。 - **官方文档**:[C++ string类官方文档](https://en.cppreference.com/w/cpp/string/basic_string) ### 💡开发建议 - **边界条件处理**:在编写代码时,要考虑各种边界条件,如字符串为空、分割符不存在等。 - **代码可读性**:使用有意义的变量名和注释,提高代码的可读性。 - **测试用例**:编写测试用例,对不同的输入进行测试,确保代码的正确性。 ######[AI写代码神器 | 631点数解答 | 2026-07-03 21:15:00]
- C++ 求解:最少操作次数让字符串无子串 “friend” (字节豆包 | 153点数解答 | 2024-08-17 16:29:54)522
- C++ 求解:最少操作次数让字符串不再含 “friend” 子串!(讯飞星火 | 260点数解答 | 2024-08-17 16:30:49)513
- Python 巧解:最少操作次数让字符串告别“friend”子串(字节豆包 | 139点数解答 | 2024-08-18 13:04:14)449
- 3414 数字游戏:Python 求解 8 位 01 字符串中 1 的个数 (字节豆包 | 106点数解答 | 2024-10-27 14:23:27)471
- 巧用字符添加,计算字符串中“our”最大数量及开发注意要点(DeepSeek | 376点数解答 | 2025-10-30 19:20:06)125
- C 语言实现:处理字符串生成最多 “our” 串,附代码及关键开发注意点 (DeepSeek | 257点数解答 | 2025-10-30 19:20:36)179
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)502
- Python 代码实现:拼接三个正整数使结果最大及复杂度分析(字节豆包 | 350点数解答 | 2025-12-10 17:53:51)72
- C++:输入字符串拼接感叹号的简洁实现(字节豆包 | 102点数解答 | 2025-12-12 20:25:37)81
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)425
- MySQL实现两表映射,将对应汉字合并输出并以逗号分隔的查询SQL(讯飞星火 | 220点数解答 | 2024-06-13 10:38:33)197
- Java实现两表映射查询,输出汉字并按指定格式拼接(讯飞星火 | 450点数解答 | 2024-06-13 10:38:35)179