//Memory: 228 KB Time: 0 MS
//Language: GNU C++ Result: Accepted
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
char s[61];
int n, i;
scanf("%d", &n);
for(int ca=1; n--; ca++)
{
i = 0;
scanf("%s", s);//puts(s);
printf("URL #%d\n", ca);
if(s[i] == 'h')
{
puts("Protocol = http");
i+=7;
}
else if(s[i] == 'f')
{
puts("Protocol = ftp");
i+=6;
}
else
{//cout<<s[i];
puts("Protocol = gopher");
i+=9;
}
printf("Host = ");
for(; s[i] != '\0' && s[i] != ':' && s[i] != '/'; i++)
{
putchar(s[i]);
}
puts("");
if(s[i] != ':')
puts("Port = <default>");
else
{
printf("Port = ");
for(i++; s[i] != '\0' && s[i] != '/'; i++)
{
putchar(s[i]);
}
puts("");
}
if(s[i] != '/')
puts("Path = <default>");
else
{
printf("Path = ");
for(i++; s[i] != '\0'; i++)
{
putchar(s[i]);
}
puts("");
}
puts("");
}
return 0;
}
<FZU1033>URLs
最新推荐文章于 2023-01-01 21:49:21 发布
本文详细阐述了URL的组成部分及解析方法,包括协议、主机、端口和路径的识别与提取,通过实例展示了如何从URL中获取这些关键信息。
1804

被折叠的 条评论
为什么被折叠?



