用到string接口如下:
substr: 建立一个字串,存放字符。
find: 查找用到所示符号的位置。
代码如下:
#includeusing namespace std; //获取协议名 string GetProtocol(const string& url) { size_t pos = url.find("://"); if (pos != string::npos) { return url.substr(0, pos - 0); } else { //返回空串 return string(); } } //获取后缀名 string GetDomain(const string& url) { size_t pos = url.find("://"); if (pos != string::npos) { size_t start = pos + 3; //加三是为了跳过://这三个字符 size_t end = url.find("/", start); if (end != string::npos) { return url.substr(start, end - start); //从start开始到end结束 } else { return string(); } } } int main() { string url1 = "https://www.baidu.com/?tn=49055317_13_hao_pg"; string url2 = "https://www.nowcoder.com/exam/company"; string url3 = "www.nowcoder.com/exam/company"; cout << GetDomain(url1) << endl; cout << GetDomain(url2) << endl; cout << GetProtocol(url1) << endl; cout << GetProtocol(url2) << endl; cout << GetProtocol(url3) << endl; system("pause"); return 0; }



