正规表示式帮助我们在一个字串中搜寻相符的样本.在这个题目中,您将会得到一个账号,您的任务是要检查这个账号是否有效.一个有效的账号必须符合以下特性:
可包含英文或数字的字元以及底线"_"字元.
字元长度在8到30之间(包含8和30).
第一行包含一个整数N,为测试资料的数量,范围在1到50之间(包含1和50).接下来的N行,每行包含了一个字串,表示为账号,输入的字串由任意可印出的字元组成.
检查每个测试资料的账号是否合法,如果是,输出"Valid",否则输出"Invalid".
前两个测试资料完全符合合法账号的特性.第三个测试资料是不合法的,因为它包含了一个不合法字元"@".第四个测试资料也是不合法的,因为它是以数字字元作为开头.
由于账号的开头只能是英文字元,因此开头可以写成如下的正规表示式:
接下来的字元可以是英文,数字或是底线字元,刚好是"\w"(word character [a-zA-Z_0-9])的范围.字串的字元长度必须要在8到30之间,扣掉开头的一个英文字元,还需要7到29个"\w"字元.
所以最后可以写成如下的正规表示式:
--testCases;
各位好,我是Magic Len,是这网站的管理员.我是台湾台中大肚山上人,毕业于台中高工资讯科和台湾科技大学资讯工程系,曾在桃机航警局服役.我热爱自然也热爱科学,喜欢和别人分享自己的知识与经验.如果你有兴趣认识我,可以加我的Facebook(点我),并且请注明是从MagicLen来的.