拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 正则表达式模式在颤振的表单验证中不起作用

正则表达式模式在颤振的表单验证中不起作用

白鹭 - 2022-01-26 1962 0 0

我正在尝试进行验证,我想检查用户的输入是否包含数字和字母。所以我创建了这段代码,但不知何故它不起作用。它没有达到第一次打印,但似乎一切正常。

我的代码:

final GlobalKey<FormState> _key = GlobalKey<FormState>();


  @override
  Widget build(BuildContext context) {
    return Form(
      key: _key,
      child: TextFormField(
          decoration: InputDecoration(
            focusedBorder: OutlineInputBorder(
                borderRadius: BorderRadius.all(Radius.circular(5.0)),
                borderSide: BorderSide(
                  color: Colors.blue,
                  width: 2,
                )),
          ),
          validator: (value) {
            if (value == null || value.isEmpty) {
              print(value);
              print('iam here');
              return 'Plate number is required';

            }
            String pattern = r'[!@#<>?":_`~;[\]\\|= )(*&^%0-9-]';
            if (!RegExp(pattern,  caseSensitive: false, unicode: true, dotAll: true).hasMatch(value)) return 'invalid form';
            return null;
          }),

uj5u.com热心网友回复:

我喜欢以这种方式使用正则表达式进行验证

TextFormField(inputFormatters: <TextInputFormatter>[FilteringTextInputFormatter.allow(RegExp("r'^[a-zA-Z0-9] $'"))]
标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *