移动电话和电话号码正则
时间: 2023-12-13 20:21:09 浏览: 29
表达式是什么?
移动电话和电话号码的正则表达式可以分别为:
移动电话:^(13[0-9]|14[5-9]|15[0-3,5-9]|16[6]|17[0-8]|18[0-9]|19[1,8,9])\d{8}$
电话号码:^(0\d{2,3}-?)?\d{7,8}$
以上是常用的正则表达式,但不同地区或不同运营商可能存在差异,需要根据实际需要进行调整。
相关问题
随机生成电话号码,然后提取里面是电信,移动,联通,用正则表达式完成
生成随机电话号码的代码:
```python
import random
def generate_phone_number():
prefix = ["130", "131", "132", "133", "134", "135", "136", "137", "138", "139",
"150", "151", "152", "153", "155", "156", "157", "158", "159",
"170", "176", "177", "178",
"180", "181", "182", "183", "184", "185", "186", "187", "188", "189"]
return random.choice(prefix) + "".join(random.sample("0123456789", 8))
print(generate_phone_number())
```
接下来,我们可以使用正则表达式来判断手机号码属于哪个运营商。以下是正则表达式的实现:
```python
import re
phone_number = generate_phone_number()
# 判断是否为中国电信号码
if re.match(r"^133\d{8}$|153\d{8}$|173\d{8}$|177\d{8}$|180\d{8}$|181\d{8}$|189\d{8}$", phone_number):
print(f"{phone_number} 是中国电信号码")
# 判断是否为中国联通号码
elif re.match(r"^130\d{8}$|131\d{8}$|132\d{8}$|155\d{8}$|156\d{8}$|166\d{8}$|170\d{8}$|171\d{8}$|175\d{8}$|176\d{8}$|185\d{8}$|186\d{8}$", phone_number):
print(f"{phone_number} 是中国联通号码")
# 判断是否为中国移动号码
elif re.match(r"^134\d{8}$|135\d{8}$|136\d{8}$|137\d{8}$|138\d{8}$|139\d{8}$|147\d{8}$|148\d{8}$|150\d{8}$|151\d{8}$|152\d{8}$|157\d{8}$|158\d{8}$|159\d{8}$|165\d{8}$|172\d{8}$|178\d{8}$|182\d{8}$|183\d{8}$|184\d{8}$|187\d{8}$|188\d{8}$", phone_number):
print(f"{phone_number} 是中国移动号码")
# 其他号码
else:
print(f"{phone_number} 不属于电信、移动、联通之一")
```
注意,以上正则表达式只能识别中国大陆地区的手机号码。如果需要支持其他地区的手机号码,需要根据具体情况修改正则表达式。
手机号码的正则表达式判断
手机号码的正则表达式判断可以通过使用Java的正则表达式来实现。可以参考中提供的代码示例来验证手机号码的合法性。该示例使用了移动、联通和电信三个运营商的手机号码规则进行验证。
具体的正则表达式如下:
移动手机号码:^((13<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Java正则表达式验证固定电话号码符合性](https://download.csdn.net/download/weixin_38680492/12756266)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [匹配移动/联通/电信手机号码正则表达式小结](https://download.csdn.net/download/weixin_38529239/14828798)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [功能强大的Java正则表达式工具类,有这个就够了](https://download.csdn.net/download/caryxp/88225749)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]