в программе ниже, мне нужно вставить строку до '|' символ в комплекте.Как пропустить все символы из строки после появления определенного символа
но после стирания charcter '|' в моем коде, я не могу пропустить весь персонаж до конца.
вход: +919845, 0987654321, 987654320 | 9845, +91987654321, 0987654320, 987654323, 987654320
ожидается выход: +919845, 0987654321, 987654320
Примечание: (1) после ввода данных, тип выхода. (2) Функция подстроки не может использоваться для этой цели.
#include<iostream>
#include <unordered_set>
#include<string>
using namespace std;
int main()
{
string str;
string::iterator it;
unordered_set <string> s;
while(getline(cin,str)) //
{
if(str=="exit")
{
break;
}
for (it= str.begin(); it !=str.end(); it++)
{
if (*it =='|')
{
it = str.erase(it);
}
}
s.insert(str);
}
for (unordered_set<string> ::const_iterator itr = s.begin(); itr != s.end(); ++itr) {
cout<<*itr<<endl;
}
return 1;
}
Спасибо за ваш повтор, но я не могу использовать одну и ту же строку для вставки в набор. – user2997518