我想删除字符串中存在的撇号。我试图写点东西,但似乎语法错误。我无法弄清楚问题出在哪里,但是我知道我的语法有问题。我使用Dev-C++。
{...
cout<<"enter the word to test "<<endl;
getline(cin,givenword);
string str (givenword);
std::string deleteapostr(givenword);
// trying to delete apostrophe if present in the string
deleteapostr.erase(std::remove_if(deleteapostr.begin(), deleteapostr.end(), '\'', deleteapostr.end());
...
}
最佳答案
remove_if
的第3个参数要求谓词,而不是元素值。您需要简单的旧remove
。 remove_if
参数的右括号。 deleteapostr.erase(std::remove(deleteapostr.begin(), deleteapostr.end(), '\''), deleteapostr.end());
关于c++ - 我想删除字符串中的撇号,但不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8017559/