澳大利亚移动号码正则表达式验证需要在号码之间允许空格



我需要验证手机号码

  • 第一个文本输入从04
  • 开始
  • 应该是包括04在内的总共10位数字(例如:0412345678)

我的输入字段在

下面
<form name="uploadForm">
<input type="tel" name="MobileNumber" id="MobileNumber" data-ng-model="ApplicationData.MobileNumber" required maxlength="14" data-ng-pattern="/^(0?4[0-9]{8}/s)$/">
<span data-ng-show="uploadForm.MobileNumber.$error.pattern">Please enter a valid mobile number.</span>
<input type="tel" name="Number" id="Number" data-ng-model="ApplicationData.Number" required maxlength="14" data-ng-pattern="/(^1300d{6}$)|(^1800d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^04d{2,3}d{6}$)/">
<span data-ng-show="uploadForm.Number.$error.pattern">Please enter a valid mobile number.</span>
</form>

有谁能帮我一下吗?

如果我理解正确的话,这是你的正则表达式模式。

^04[0-9]{8}$

^04 -以04开头
[0-9]{8} -匹配后面的8位数字
$ -匹配字符串

我认为您的第一个问题替换为此regexp。它接受数字之间的空格

ng-pattern="/^04(s?[0-9]{2}s?)([0-9]{3}s?[0-9]{3}|[0-9]{2}s?[0-9]{2}s?[0-9]{2})$/"

关于你的第二个问题,它很长,这是我目前能想到的。

ng-pattern="/(^1300s?([0-9]{3}s?[0-9]{3}|[0-9]{2}s?[0-9]{2}s?[0-9]{2})$)|(^1800s?([0-9]{3}s?[0-9]{3}|[0-9]{2}s?[0-9]{2}s?[0-9]{2})$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^04(s?[0-9]{2}s?)([0-9]{3}s?[0-9]{3}|[0-9]{2}s?[0-9]{2}s?[0-9]{2})$)/"

任何人都有兴趣修改/做空这个。

最新更新