#include <regex>
#include <string>
#include <iostream>
using namespace std;
std::string ExtractPrintableString(const std::string& message) {
std::regex trim_nonprintable_regex("^[[:print:]]*");
std::smatch matched_message;
std::regex_search(message, matched_message, trim_nonprintable_regex);
return matched_message[0].str();
}
int main() {
cout << ExtractPrintableString("\r\t\r\t\r\t\ruessw7cr9jhmdiy") << "\n";
cout << ExtractPrintableString("asd\r\tdfvdfv");
return 0;
}
I2luY2x1ZGUgPHJlZ2V4PgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpzdGQ6OnN0cmluZyBFeHRyYWN0UHJpbnRhYmxlU3RyaW5nKGNvbnN0IHN0ZDo6c3RyaW5nJiBtZXNzYWdlKSB7CiAgICBzdGQ6OnJlZ2V4IHRyaW1fbm9ucHJpbnRhYmxlX3JlZ2V4KCJeW1s6cHJpbnQ6XV0qIik7CiAgICBzdGQ6OnNtYXRjaCBtYXRjaGVkX21lc3NhZ2U7CiAgICBzdGQ6OnJlZ2V4X3NlYXJjaChtZXNzYWdlLCBtYXRjaGVkX21lc3NhZ2UsIHRyaW1fbm9ucHJpbnRhYmxlX3JlZ2V4KTsKCiAgICByZXR1cm4gbWF0Y2hlZF9tZXNzYWdlWzBdLnN0cigpOwogIH0KCmludCBtYWluKCkgewogIAljb3V0IDw8IEV4dHJhY3RQcmludGFibGVTdHJpbmcoIlxyXHRcclx0XHJcdFxydWVzc3c3Y3I5amhtZGl5IikgPDwgIlxuIjsKICAJY291dCA8PCBFeHRyYWN0UHJpbnRhYmxlU3RyaW5nKCJhc2Rcclx0ZGZ2ZGZ2Iik7CiAgICByZXR1cm4gMDsKfQ==