其他分享
首页 > 其他分享> > 035 用正则表达式分别提取电话号的区号、电话号和分机号

035 用正则表达式分别提取电话号的区号、电话号和分机号

作者:互联网

如何搜索字符串中包含区号和分机号的第一个出现的电话号,并提取电话号中的区号、电话号和分机号。要求如下:

  1.区号固定是3位数字

  2.电话号至少是7位数字

  3. 分机号至少是3位数字

  4. 区号、电话号和分机号之间用连字符分割

 

import re
# 正则表达式分组

m = re.search('\d{3}-\d{7,}-\d{3,}', '我的公司座机是024-12345678-5432')
if m is not None:
    print(m.group())

m = re.search('(\d{3})-(\d{7,})-(\d{3,})', '我的公司座机是024-12345678-5432')
print(m.groups())
print(m.groups()[0])
print(m.groups()[1])
print(m.groups()[2])

  

024-12345678-5432
('024', '12345678', '5432')
024
12345678
5432

 

通过在正则表达式的某些部分加一对圆括号,可以单独获取圆括号中的内容,这称为正则表达式的分组。

标签:电话,5432,分机号,12345678,024,groups,print,035
来源: https://www.cnblogs.com/yuminhu/p/16058285.html