时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
给定一个字符串,验证是否是电子邮箱。
fresh_boy 为了简化问题,发明了一个新的电子邮箱命名规范。(注意此处的电子邮箱格式与常规的电子邮箱格式要求的区别)
fresh 电子邮件地址格式如下:
local-part@domain
其中:
- `local-part` 本地部分,是电子邮件地址的用户名称。
- `domain` 域名部分,是电子邮件地址所属的域名。
- 中间用一个 `@` 连接。
local-part(本地部分)
1. 字符范围:
- 可以包含字母(a-z, A-Z)、数字(0-9)。
- 可以包含点 .,但不能出现在开头或结尾。
2. 长度限制:
- 最长

个字符,最短

个字符。
domain(域名部分)
1. 字符范围:
- 可以包含字母(a-z, A-Z)、数字(0-9)。
- 可以包含点 .,但不能出现在开头或结尾。
- 可以包含分隔符 -,但不能出现在开头或结尾。
2. 长度限制:
- 最长

个字符,最短

个字符。
输入描述:
多组测试数据,第一行一个正整数
表示数据组数。
接下来
行,每行一个字符串
,保证输入字符为 ASCII 码值在
之间的可显示字符,且不含空格。
输出描述:
共
行,每行一个字符串 `Yes` 表示电子邮箱格式正确,`No` 表示电子邮箱格式不正确。
示例1
输入
复制
8
example@example.com
user.nametagsorting@example.com
user-name@sub.domain.com
plainaddress
@example.com
user@.com
user@com
user@-example.com
输出
复制
Yes
Yes
No
No
No
No
Yes
No