如何检查用户名是否已存在于数据库中并验证用户名不带空格

时间:2019-06-27 07:09:50

标签: flutter dart

我正在制作一个注册表,可以检查数据库中是否存在,以及如何验证用户名必须使用字母数字和空格, 这是我现在的代码

String validateUsername(String value) {
 String pattern = r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$';
RegExp regExp = new RegExp(pattern);
if (value.length == 0) {
  return "Username is Required";
} else if(!regExp.hasMatch(value)){
  return "Invalid username";
}else {
  return null;
}

}

我认为验证与电子邮件几乎相同,但是我仍然很困惑

1 个答案:

答案 0 :(得分:0)

这就是我的方法。 在使用颤振时。

// import needed for BlackListingTextInputFormatter function
import 'package:flutter/services.dart'; 

TextField(
     inputFormatters: [
          BlacklistingTextInputFormatter(
            new RegExp("[^a-z^A-Z^0-9]+")) //Regex for accepting only alphanumeric characters
          ],
)

使用此方法将确保除了字母数字以外的任何字符都不能通过文本字段。

所以现在您只需要检查从数据库中从该字段获得的字符串即可。

您可以制作一个api并进行类似的查询

SELECT * FROM user WHERE user_name = "userName";

如果响应为空,则该用户名可用。

相关问题