用于验证用户名的正则表达式
我正在尝试创建一个正则表达式来根据以下条件验证用户名:
- 仅包含字母数字字符、下划线和点。
- 下划线和点不能位于用户名的末尾或开头(例如 / / / )。
_username
username_
.username
username.
- 下划线和点不能彼此相邻(例如 )。
user_.name
- 下划线或点不能连续多次使用(例如 / )。
user__name
user..name
- 字符数必须介于 8 到 20 之间。
这就是我到目前为止所做的;听起来它执行所有标准规则,但第5条规则。我不知道如何添加第5条规则:
^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$