#include <iostream>
#include <regex>
#include <string>
// ^ — start of string
// [01] — allowed characters
// + — one or more occurrences
// $ — end of string
bool isBinary(const std::string& s) {
static const std::regex binary_regex("^[01]+$");
return std::regex_match(s, binary_regex);
}
int main() {
std::string s = "1010011";
isBinary(s) ? std::cout << "Valid string\n" : std::cout << "Invalid string\n";
isBinary("0000") ? std::cout << "Valid string\n" : std::cout << "Invalid string\n";
isBinary("1111") ? std::cout << "Valid string\n" : std::cout << "Invalid string\n";
isBinary("1021") ? std::cout << "Valid string\n" : std::cout << "Invalid string\n";
}
/*
run:
Valid string
Valid string
Valid string
Invalid string
*/