(1) 设计用户名校验函数:长度6-18之间,由大小写英文字符、数字、下划线组成,且首字母不是数字及下划线,数字只能出现在末尾,末尾不能是下划线。
时间: 2024-02-19 20:58:06 浏览: 73
用户名只允许字母、数字、下划线组成,首位只能为字母(6-20字符)
5星 · 资源好评率100%
好的,我可以为您设计一个用户名校验函数。以下是该函数的Python实现:
```python
import re
def check_username(username):
if not 6 <= len(username) <= 18:
return False
if not re.match(r'^[a-zA-Z][a-zA-Z0-9_]*[a-zA-Z0-9]$', username):
return False
if username[-1] == '_' or username[-2:].isdigit():
return False
return True
```
该函数首先检查用户名长度是否在6到18之间,如果不是则返回False。接着,它使用正则表达式检查用户名是否由大小写英文字母、数字、下划线组成,且首字母不是数字或下划线,数字只能出现在末尾,且末尾不能是下划线。如果不符合要求,则返回False。最后,如果用户名符合所有要求,则返回True。
您可以通过调用该函数并传入用户名来进行校验,例如:
```python
username = input('请输入用户名:')
if check_username(username):
print('用户名合法')
else:
print('用户名不合法')
```
请注意,由于本函数使用了正则表达式进行校验,因此在使用前需要导入re模块。
阅读全文