仅在 textField Flutter 中输入偶数
Input only even numbers in textField Flutter
那么,TextFormField 用户只能插入偶数的方式是否可行?现在他们无法输入例如 12,这就是问题所在。
child: TextFormField(
inputFormatters: [
FilteringTextInputFormatter.deny(RegExp("[1,3,5,7,9]"))
],
keyboardType: TextInputType.number,
),
偶数或奇数只看最后一位即可,最后一位也需要是偶数或奇数。所以奇数运行的正则表达式可以是:
"$\s*(\d*[13579]\s*,\s*)*\d*[13579]$"
使用正则表达式如下
child: TextFormField(
inputFormatters: [
FilteringTextInputFormatter.deny(RegExp("$\s*(\d*[13579]\s*,\s*)*\d*[13579]$"))
],
keyboardType: TextInputType.number,
),
为了拒绝偶数使用正则表达式
"$\s*(\d*[02468]\s*,\s*)*\d*[02468]$"
那么,TextFormField 用户只能插入偶数的方式是否可行?现在他们无法输入例如 12,这就是问题所在。
child: TextFormField(
inputFormatters: [
FilteringTextInputFormatter.deny(RegExp("[1,3,5,7,9]"))
],
keyboardType: TextInputType.number,
),
偶数或奇数只看最后一位即可,最后一位也需要是偶数或奇数。所以奇数运行的正则表达式可以是:
"$\s*(\d*[13579]\s*,\s*)*\d*[13579]$"
使用正则表达式如下
child: TextFormField(
inputFormatters: [
FilteringTextInputFormatter.deny(RegExp("$\s*(\d*[13579]\s*,\s*)*\d*[13579]$"))
],
keyboardType: TextInputType.number,
),
为了拒绝偶数使用正则表达式
"$\s*(\d*[02468]\s*,\s*)*\d*[02468]$"