Теперь, когда вы отправили код, мы можем увидеть, в чем проблема:
std::string input;
std::cin >> input;
Проблема здесь, operator >>
пропускает пробел при чтении, поэтому, если вы введете пробел плюс, cin пропустит пробел, и тогда ваше регулярное выражение больше не будет совпадать.
Чтобы заставить эту программу работать, используйте std::getline
вместо того, чтобы прочитать все, что было введено до того, как пользователь нажал клавишу ввода (включая пробелы):
std::string input;
std::getline(std::cin, input);