【发布时间】:2012-06-22 11:43:00
【问题描述】:
我整理了这个验证数字的小正则表达式公式,以确保它们是正确的Australian mobile number。我遇到的问题是新的 Telstra 号码不符合标准,因此会引发错误。
它接受的数字格式是
0421813629、0430091460等...
虽然当我们使用 3 位数为 5 或更高的号码时,它似乎会引发错误,而 Telstras 的新号码在该 3 位数位置有 7
/^(?:\+?61|0)4 ?(?:(?:[01] ?[0-9]|2 ?[0-57-9]|3 ?[1-9]|4 ?[7-9]|5 ?[018]) ?[0-9]|3 ?0 ?[0-5])(?: ?[0-9]){5}$/
我认为该错误与 ?[0-57-9]|3
有关【问题讨论】:
-
如果您能告诉我们澳大利亚电话号码的格式是什么,那就太好了。
-
@m0skit0 我列举了几个例子,有 10 位数字,总是从 04********开始
-
那么问题到底是什么?你想要一个正则表达式来做这两个?那是行不通的,因为你不知道它是一个坏号码还是只是一个 telstra 号码
-
我需要它来验证所有我认为 |3(第 3 个)子集导致的问题,包括在第 3 位数中有 7 的 telstra 的问题
标签: ruby-on-rails regex validation mobile