Удалить цифры и сохранить подчеркивание из строки в C ++ - PullRequest
0 голосов
/ 18 мая 2018

У меня есть этот кусок кода, но он выводит Hello World без подчеркивания.Если я хочу вывести Hello_World, как я могу это сделать?

string s = "Hello_World 1 2";
s.erase(remove_if(s.begin(), s.end(), [](char c) { return !isalpha(c); } ), s.end());

1 Ответ

0 голосов
/ 19 мая 2018

Вы можете достичь определенного результата, добавив еще одно условие к функции std::remove_if.

std::string s = "Hello_World 1 2";
s.erase( std::remove_if(s.begin(), s.end(),  [](char c) 
                       { 
                           return !isalpha(c) && c != '_';
                       }), 
                       s.end());
std::cout << s;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...