求助,字符串如何识别存在非中英文和数字以外的字符

字符串如何识别存在非中英文和数字以外的字符
std::regex regstr("^a-zA-Z0-9\u4E00-\u9FA5]");
std::smatch result;
auto rl = std::regex_search(str, result, regstr);
我现在是想正则表达式识别,但是一直无法正确识别

大家在处理这种 取名字的 如何对字符串进行校验啊