Flutter - Validate a phone number using Regex
Validation using Regex:
String validateMobile(String value) {
String pattern = r'(^(?:[+0]9)?[0-9]{10,12}$)';
RegExp regExp = new RegExp(pattern);
if (value.length == 0) {
return 'Please enter mobile number';
}
else if (!regExp.hasMatch(value)) {
return 'Please enter valid mobile number';
}
return null;
}
You could make the first part optional matching either a +
or 0 followed by a 9. Then match 10 digits:
^(?:[+0]9)?[0-9]{10}$
^
Start of string(?:[+0]9)?
Optionally match a+
or0
followed by 9[0-9]{10}
Match 10 digits$
End of string
Regex demo