#include <iostream>
#include <regex>
using namespace std;

int main() {
	std::string s("1234 - Text | OneWord , Multiple Words | Another Text , 456");
	std::regex reg(R"((\s+-\s+|\b\s+\b)|\s+)");
	std::cout << std::regex_replace(s, reg, "$1") << std::endl;
	
	return 0;
}