我目前正在编写一个脚本,判断用户名密码的有效性.&用户名应包含3到20个字符,除"之外,没有特殊字符."、"_"和"@".
目前,这是我的功能:
fun isValidUsername(username: String): Boolean {
var usrnmlength = true
var usrnmspecial = true
if ((username.length < 3) or (username.length > 20)) { usrnmlength = false }
if (username.filter { !it.isLetterOrDigit() }.firstOrNull() != null) {usrnmspecial = false}
return if ((usrnmlength) and (usrnmspecial)) {
(true)
} else {
(false)
}
}
它会判断用户名是否有3到20个字符,以及用户名是否没有特殊字符.但它也说用户名无效,如果有特殊字符"."、"_"和"@".这些应该被允许.我该怎么办?