我创建了一个登录页面,需要将这些内容添加到我的密码中。如何 使用验证警报消息呢?
您需要使用正则表达式来验证结构。
bool validateStructure(String value){ String pattern = r'^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[!@#\$&*~]).{8,}$'; RegExp regExp = new RegExp(pattern); return regExp.hasMatch(value); } output: Vignesh123! : true vignesh123 : false VIGNESH123! : false vignesh@ : false 12345678? : false
此函数将验证传递的值是否具有结构。
var _usernameController = TextEditingController(); String _usernameError; ... @override Widget build(BuildContext context) { return ... TextFormField( controller: _usernameController, decoration: InputDecoration( hintText: "Username", errorText: _usernameError), style: TextStyle(fontSize: 18.0), ), Container( width: double.infinity, height: 50.0, child: RaisedButton( onPressed: validate, child: Text( "Login", style: TextStyle(color: Colors.white), ), color: Theme.of(context).primaryColor, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(50.0), ), ), ), ... } ... validate(){ if(!validateStructure(_usernameController.text)){ setState(() { _usernameError = emailError; _passwordError = passwordError; }); // show dialog/snackbar to get user attention. return; } // Continue }