std::string RdsUtils::GetRdsInstanceHostPattern()

in src/util/rds_utils.cc [147:165]


std::string RdsUtils::GetRdsInstanceHostPattern(const std::string& host) {
    auto f = [ host ](const std::regex& pattern) {
        std::smatch m;
        if (std::regex_search(host, m, pattern) && m.size() > 4 && !m.str(3).empty()) {
            std::string result("?.");
            result.append(m.str(3));

            return result;
        }
        return std::string();
    };

    auto result = f(AURORA_DNS_PATTERN);
    if (!result.empty()) {
        return result;
    }

    return f(AURORA_CHINA_DNS_PATTERN);
}