欢迎访问宙启技术站
智能推送

Python正则表达式:匹配手机号码

发布时间:2023-12-04 09:37:37

正则表达式是一种用来描述、匹配字符串模式的规则。在Python中,可以通过re模块来使用正则表达式。

匹配手机号码的正则表达式如下:

^1[3456789]\d{9}$

其中,^表示匹配字符串的开始,$表示匹配字符串的结束。[3456789]表示 位数字可以是3、4、5、6、7、8、9中的任意一个。 \d表示匹配任意一个数字,{9}表示匹配前面的\d恰好9次,也就是手机号码的后9位数字。

以下是一个匹配手机号码的例子:

import re

phone_patterns = [
    "13812345678",
    "15987654321",
    "18611112222",
    "10012345678",
    "1581111111",
]

phone_regex = re.compile(r'^1[3456789]\d{9}$')

for phone in phone_patterns:
    if re.match(phone_regex, phone):
        print(f"{phone} 是合法的手机号码")
    else:
        print(f"{phone} 不是合法的手机号码")

运行以上代码,将会输出如下结果:

13812345678 是合法的手机号码
15987654321 是合法的手机号码
18611112222 是合法的手机号码
10012345678 不是合法的手机号码
1581111111 不是合法的手机号码

通过以上例子可以看出,匹配手机号码的正则表达式可以准确地判断字符串是否为手机号码。在实际编程中,可以利用正则表达式来验证用户输入的手机号码是否合法。