How to restrict "0" should not be placed at the first character in the text field
in Flutter? Below is the sample dart code.
TextField(
inputFormatters: <TextInputFormatter>[
FilteringTextInputFormatter.allow(
RegExp("[0-9\u0660-\u0669]")),
],
keyboardType: TextInputType.number,
focusNode: _nodeText1,
controller: mobileNumber,
decoration: InputDecoration.collapsed(
fillColor: TuxedoColor.whiteColor,
hintText: "5xxxxxxxx"),
),
CodePudding user response:
Use this :
inputFormatters: <TextInputFormatter>[
FilteringTextInputFormatter.allow(
RegExp(r'[0-9]'),
),
FilteringTextInputFormatter.deny(
RegExp(
r'^0 '), //users can't type 0 at 1st position
),
],
CodePudding user response:
Try below code use FilteringTextInputFormatter.deny
TextField(
inputFormatters: <TextInputFormatter>[
FilteringTextInputFormatter.allow(RegExp("[0-9\u0660-\u0669]")),
FilteringTextInputFormatter.deny(RegExp(r'^0 ')),
],
keyboardType: TextInputType.number,
decoration: InputDecoration.collapsed(hintText: "5xxxxxxxx"),
),