编写一个程序,验证用户输入的用户名和电子邮件地址。用户名必须满足以下条件:以字母开头长度在5 到 15 个字符之间只能包含字母、数字和下划线。电子邮件地址必须满足以下条件:包含一个“@”符号以字母开头后面跟随域名(如 example.com),并且域名只能包含字母和数字
时间: 2024-10-17 18:04:22 浏览: 26
php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
为了编写这样的验证程序,我们可以使用Python的正则表达式库`re`来检查字符串是否符合指定的模式。下面是一个简单的例子:
```python
import re
def validate_username(username):
pattern = r"^[a-zA-Z][a-zA-Z0-9_]{4,14}$"
return bool(re.match(pattern, username))
def validate_email(email):
pattern = r"^[a-zA-Z][\w.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$"
domain_parts = email.split('@')
if len(domain_parts) != 2 or not domain_parts[1].isdigit():
return False
else:
return bool(re.match(pattern, email))
# 用户输入
username_input = input("请输入用户名: ")
email_input = input("请输入电子邮件地址: ")
if validate_username(username_input):
print(f"用户名 '{username_input}' 验证通过")
else:
print(f"用户名 '{username_input}' 验证失败")
if validate_email(email_input):
print(f"电子邮件地址 '{email_input}' 验证通过")
else:
print(f"电子邮件地址 '{email_input}' 验证失败")
```
在这个程序中,我们分别定义了两个函数来验证用户名和电子邮件地址。如果输入的数据不符合模式,它们会返回False,否则返回True。
阅读全文