练习专区

今天的一小步就是明天的一大步
Problem 1833 域名申请------------------------java
Accepted: 4   Total Submit: 43
Time Limit: 1000ms   Memory Limit: 30720KB
Description
小明最近在学习MVC编程,为了学习方便,他计划申请一个自己的域名。他拟定了一组域名,但是他对域名规则不同熟悉,所以他想请你帮忙判断一下他拟定的域名是否合规。恰好你刚刚学习了正则表达式,你知道使用正则表达式可以很容易的完成这项任务。 域名通常由顶级域名和二级、三级域名组成,最后面的是顶级域名,向左依次是二级域名、三级域名。顶级域名分国际和国内顶级域名,顶级域名只有有限的几种,用来表示域名所属的类型或国家。二级、三级域名则可以由用户自己拟定,只要满足相关的命名规则就可以了。英文二级和三级域名的命名规则是: 1、必须由字母(a~z,A~Z)、数字(0~9)、连接符(-)组成,字母不区分大小写。 2、长度不超过20。 3、不以连接符(-)开头和结尾。 比如: google.com是个合法的二级域名,com是顶级域名,google是二级域名 sm.gov.cn是个合法的三级域名,cn是个顶级域名,gov是二级域名,sm是三级域名。而sm_0598.com,-sm.com.cn,sm-.gov.cn则不是一个合法的域名。
Input
输入有多组。每组一个字符串形式的域名。
Output
输出对每个域名的判断结果。如果是合法域名则输出是几级域名,并从顶级域名开始逐级输出名字。否则输出非法域名。
Sample Input
google.com
smc.edu.cn
sm0598.com.cn
sm-86.com.cn
10086.cn
%2048.com
_sm.gov.cn
sm_.net
-tw.com
tw-.com
Sample Output
合法的二级域名:com google
合法的三级域名:cn edu sm
合法的三级域名:cn com sm0598
合法的三级域名:cn com sm-86
合法的二级域名:cn 10086
非法域名
非法域名
非法域名
非法域名
非法域名
Hint
提交     返回