python正则匹配电话号码
以下是一个可以匹配中国大陆手机号码的正则表达式,在 Python 中使用可以调用 re 模块的 findall 函数:
import re text = "我的电话号码是 13312345678,你的号码是 13987654321" pattern = r"\b1[3456789]\d{9}\b" phone_numbers = re.findall(pattern, text) print(phone_numbers)
上面的代码中,\b 表示单词边界,确保匹配到的数字前后没有其他字符。接着,1 表示手机号码的第一位是数字 1,方括号 [3456789] 表示第二位可以是数字 3、4、5、6、7、8 或 9,\d{9} 表示接下来的 9 位数字可以是任意数字,这样就可以匹配中国大陆的手机号码了。
上述代码将会输出以下内容:
['13312345678', '13987654321']
其中,['13312345678', '13987654321'] 是匹配到的所有符合条件的手机号码。
相关文章