Um breve entendimento da propriedade inputFormatters da caixa de entrada do componente TextField dos componentes básicos do Flutter
inputFormatters
A propriedade inputFormatters é usada para limitar o que é inserido na caixa de entrada.
O valor da propriedade é uma coleção do tipo TextInputFormatter. A coleção do tipo TextInputFormatter é usada para definir as regras de validação para o conteúdo de entrada da caixa de entrada, incluindo os três tipos de regras de validação a seguir, que são todas expressões regulares definidas por RegExp().
(1) FilteringTextInputFormatter.allow() (verificação de lista branca), o que significa que somente caracteres que atendem às regras podem ser inseridos;
(2) FilteringTextInputFormatter.deny() (verificação de lista negra), o que significa que todos os caracteres podem ser inseridos, exceto os caracteres especificados;
LengthLimitingTextInputFormatter (limite de comprimento), a função é semelhante à propriedade maxLength.
Apenas números são permitidos e não devem exceder 6 dígitos
inputFormatters: [
FilteringTextInputFormatter.allow(RegExp('[0-9]')),//只允许输入数
LengthLimitingTextInputFormatter(6),
],
Apenas letras e não mais de 6 caracteres são permitidos
inputFormatters: [
FilteringTextInputFormatter.allow(RegExp('[a-zA-Z]')),
LengthLimitingTextInputFormatter(6),
],
É proibido entrar no abF!. Exceto que esses poucos podem ser
inputFormatters: [
FilteringTextInputFormatter.deny(RegExp('[abF!.]')
),
],
Letras maiúsculas e minúsculas são permitidas, mas abF!.
inputFormatters: [
FilteringTextInputFormatter.allow(RegExp('[a-zA-Z]')),
FilteringTextInputFormatter.deny(RegExp('[abFeG]')),
],