django手机号码正则表达式

时间:2017-12-22 10:17:31

标签: django mobile

我已经看过许多手机示例以及第三方手机号码包。但我想要的是这个:

+ country_code或空格(这3个是可选的)phone_number(最小范围数= 8,最大值为13) EG:+ 65,98654578

基于其中一个示例而且它可以工作,但不是我想要的。 :What's the best way to store Phone number in Django models

phone_regex = RegexValidator(regex=r'^\+?1?\d{9,15}$', message="Phone number must be entered in the format: '+999999999'. Up to 15 digits allowed.")
phone_number = models.CharField(validators=[phone_regex], max_length=17, blank=True) # validators should be a list

我做的是:

mobile_regex = RegexValidator(regex=r'^\+?1?\d{1-3}?\,?\s?\d{8-15}$', message="Phone number must not consist of space and requires country code. eg : +6591258565")

但它不起作用。我做错什么了吗?请帮帮我

1 个答案:

答案 0 :(得分:1)

你使用破折号而不是逗号,并且根据你的指示你也想要同时捕获+和国家代码,这个正则表达式对我有用:

^(\+\d{1,3})?,?\s?\d{8,13}