Description
统一资源定位符也被称为网页地址,是因特网上标准的资源的地址(Address)。它最初是由蒂姆·伯纳斯-李发明用来作为万维网的地址的。现在它已经被万维网联盟编制为因特网标准RFC1738了。
因特网上的可用资源可以用简单字符串来表示,被称为“统一资源定位器”(URL,Uniform / Universal Resource Locator)。URL是一种标准化的命名方法,它可以用统一的格式来表示Internet提供的各种服务中信息资源的地址,以便在浏览器中使用相应的服务。
统一资源定位符的标准格式如下:
协议类型://服务器地址(:端口号)/路径/文件名
在应用中,我们常常需要从一条URL中截取远程服务器地址部分(IP地址或域名),以便进一步处理。为此我们提出了一个新算法来实现该功能,基于……
呃,写到这里卡住了,现在需要你来实现这个“新算法”,输出所给URL中的远程服务器地址部分。
Input
输入数据的第一行是一个正整数T(0<T<=100),表示有T组测试数据。
每组测试数据只有一行,包含一条URL(长度小于1000个字符,为可见ASCII字符),其中不包含空格,符合URL标准格式。
Output
对于每组测试数据,在一行上输出该URL地址中的远程服务器地址部分(IP地址或域名,不包含端口号)。
Sample Input
5
http://acm.xidian.edu.cn/
http://qinz.maybe.im/
https://www.something.com:8080/p?id=0
ftp://ftp.anything.com/nothing.zip
http://127.0.0.1/a/b/c/d/e
Sample Output
acm.xidian.edu.cn
qinz.maybe.im
www.something.com
ftp.anything.com
127.0.0.1
/*
*@author houyong
*/
#include <iostream>
#include <cstring>
#include <cmath>
#include <ctime>
#include <vector>
#include <algorithm>
#include <iterator>
#include <queue>
#include <iomanip>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
//#define LOCAL
using namespace std;
int main()
{
#ifdef LOCAL
freopen("in.txt", "r", stdin);
freopen("out.txt", "w", stdout);
#endif // LOCAL
int n;
scanf("%d", &n);
while(n--)
{
string url;
int i, j, k;
cin>>url;
int slash_2 = 0;
int slash_3 = 0;
for(i=0; i<url.size(); i++)
{
if(url[i]=='/') slash_2++;
if(slash_2==2)break;
}
for(j=0; j<url.size(); j++)
{
if(url[j]=='/') slash_3++;
if(slash_3==3)break;
}
string sub = url.substr(i+1, j-i-1);
int colon = sub.find(':', 0);
cout<<sub.substr(0, colon)<<endl;
}