c++ - C++去除字符串中的特殊字符

标签 c++

我有以下内容

string myStr = "myname-abc";

string myStr1 = strstr(myStr.c_str(), "-");

现在在 myStr1 中我有 -abc。但我不想在它前面加上“-”,我想要“abc”,我该如何使用字符串数据类型来做到这一点。

感谢您的帮助。

最佳答案

不确定我是否在关注,但您想删除第一个元素?

str.erase(0, 1); // erases 1 element starting from position 0

此外,如果您只是想删除 - 之前的所有内容:

str.erase(0, str.find('-') + 1); 

如果您提供给程序的数据不能保证某处有 -,您应该检查 str.find('-') 的返回值对于string::npos,没有找到时的返回值。

关于c++ - C++去除字符串中的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4429881/

相关文章:

C++:用于循环打印地址而不是值的数组

c++ - 需要生成100到500的随机数

c++ - 在 Linux 或 Windows 上学习 C++?

iphone - 如何在 C++ 中获取 iPhone 上的语言环境?

具有碎片字段和 uint 别名的 C++ 位字段

c++ - 使用多线程调试 DLL (/MDd) C 运行时库构建静态 Opencv 库

c++ - 如何使用C++中的插槽图/对象池模式管理数百万个游戏对象?

java - 有界基元

c++ - C++ 中奇怪的运行时异常

c++ - 传递多种数据类型的最佳方式