正式表达印度固定电话号码

时间:2010-11-25 10:33:10

标签: python regex

印度座机电话号码采用以下格式之一。

080 25478965
0416-2565478
08172-268032

什么是最简单的正则表达式来容纳所有这些。城市代码和电话号码之间的空格可以是空格或“ - ”。如果正则表达式可以容纳没有城市代码和电话号码之间的分隔符的情况,那将是很好的。

3 个答案:

答案 0 :(得分:4)

准确地说这三种格式:

^\d{3}([ -]\d\d|\d[ -]\d|\d\d[ -])\d{6}$

另一个更自由的选择是在每个数字之后允许空格或短划线(除了最后一个数字):

^(\d[ -]?){10}\d$

答案 1 :(得分:2)

如果您不需要验证位数等,我可能只会使用/^(\d+[ \-]+\d+)$/。如果您希望将这两个部分分开:/^(\d+)[ \-]+(\d+)$/

答案 2 :(得分:0)

^[\d]{3,4}[\-\s]*[\d]{6,7}$

这将匹配[3-4位] [零到多个破折号和空格] [6-7位数]