#include
#include
void remove_first_number(std::string &s) {
bool n = false;
bool w = false;
int b = -1, e = -1;
for (size_t c = 0; c <= s.size(); ++c) {
if (!n && !w && c < s.size() && !(isspace(s[c]) || ispunct(s[c]))) {
if (isdigit(s[c])) {
n = true;
b = c;
} else {
w = true;
}
} else if (w && c < s.size() && (isspace(s[c]) || ispunct(s[c]))) {
w = false;
} else if (n && (c == s.size() || isspace(s[c]) || ispunct(s[c]))) {
e = c;
break;
} else if (n && !isdigit(s[c])) {
n = false;
w = true;
}
}
if (e > 0) s.erase(b, e - b);
}
int main() {
std::string s;
std::cout << "string? ";
std::getline(std::cin, s);
remove_first_number(s);
std::cout << "result: " << s << std::endl;
}
Напишите на email.