c++ - 在 C++ 中修剪字符串

标签 c++ replace trim

您好,我在使用 C++ 修剪字符串时遇到问题。它在末尾添加了一些奇怪的字符 字符串。

string& Napis::subst(char cold, char cnew) { 
    string * s = new string(data); 
    replace(s->begin(),s->end(), cold, cnew);  
    return *s; // takes back string s with changed sign
}

最佳答案

我敢打赌,您调用 substcnew 设置为零。您期望这会删除字符,但事实并非如此。顾名思义,它用零替换它们。

怎么样:

string Napis::subst(char cold, char cnew) { 
    assert(cnew != 0);
    string s = data; 
    replace(s.begin(), s.end(), cold, cnew);  
    return s; // takes back string s with changed sign
}

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

相关文章:

Java - 使用数组中的值的replace()方法正在更改数组值?

c++ - 替换功能不起作用?

python - 使用 Numpy 查找给定多个数组值的索引

c# - 修剪或格式化 asp 网络超链接

angular - 如何从 typescript 中的字符串中删除空格?

c++ - 如何使用 Q_LOGGING_CATEGORY 并在模板函数中引用类别而不会出现多重实现错误?

c++ - C++ 中的列表数组。指针;/

c++ - 有没有办法让函数成为参数?

c++ - C++ 数组初始化的 Doxygen 问题

java - Java 中的 Android .NET Trim 函数?