Flutter应用手机号验证正则表达式求助:适配+260开头号码规则
Flutter手机号正则验证修复方案
你当前的正则表达式额外限制了第5位必须是5、6或7,这和你“剩余8位为0-9任意数字”的需求冲突,导致验证无法正常工作。
修正后的正则表达式
r'^\+260[79]\d{8}$'
正则规则说明
^\+260:强制匹配以+260开头的字符串[79]:匹配第4位的数字7或9\d{8}:匹配后续任意8位0-9的数字$:确保字符串末尾没有多余的字符
替换后的完整验证代码
validator: (value) { if (value!.isEmpty) { return 'Phone number cannot be empty'; } if (!RegExp(r'^\+260[79]\d{8}$').hasMatch(value)) { return 'Enter valid number'; } return null; },
内容的提问来源于stack exchange,提问作者Jackson
相关产品推荐
相关产品推荐

