一、URL格式为http://192.168.80.166:6666/designResLib/test/test
std::vector<CString> ThkCabRMaterialStaDlg::splitAddress(const CString& address)
{std::vector<CString> result;CString remaining = address;result.push_back(remaining.Left(remaining.Find(':'))); // 获取协议部分remaining = remaining.Mid(remaining.Find(':') + 1);CString ip = remaining.Left(remaining.Find(':')); // 获取完整的 IP 地址部分if (ip.Left(2) == _T("//")) {ip = ip.Mid(2); // 去掉前面的 //if (ip.Left(1) == _T("/")) {ip = ip.Mid(1); // 去掉前面的 /}}result.push_back(ip);remaining = remaining.Mid(remaining.Find(':') + 1);if (remaining.Find('/') != -1) {result.push_back(remaining.Left(remaining.Find('/'))); // 获取端口部分}remaining = remaining.Mid(remaining.Find('/') + 1);if (!remaining.IsEmpty()) {result.push_back(remaining); // 获取路径部分}
}
二、URL格式为http://plm.abc.com/api/abc/customer/classification/abc
std::vector<CString> result;
// 找到第一个"/"的位置
int pos1 = address.Find("/");// 提取第一部分
CString part1 = address.Left(pos1);
result.push_back(part1);// 找到第一个"/"之后的部分
CString remaining = address.Mid(pos1 + 2); // 加2是为了去除“//”// 找到第二个出现的"/"的位置
int pos2 = remaining.Find("/");// 提取第二部分
CString part2 = remaining.Left(pos2);
result.push_back(part2);result.push_back("80");// 提取第三部分
CString part3 = remaining.Mid(pos2);
result.push_back(part3);return result;