「这是我参与2022首次更文挑战的第25天,活动详情查看:2022首次更文挑战」。
面试题第九关:
第一部分——考点:
- 正则表达式分组的使用
第二部分——面试题:
1.面试题一:如何搜索字符串中包含区号和分机号的第一个出现的电话号,并提取电话号中的区号,电话号和分机号,要求:
- 区号固定是三位数字
- 电话号至少是七位数字
- 分机号至少是三位数字
- 区号,电话号和分机号之间用连字符分隔 电话号案例:024-12345678-3456
第三部分——解析:
import re
m = re.search('(\d{3})-(\d{7,})-(\d{3,})', '我的公司座机是:024-12345678-3456')
if m is not None:
print(m.groups()) # 元组形式显示
print(m.groups()[0]) # 区号
print(m.groups()[1]) # 电话号
print(m.groups()[2]) # 分机号
第四部分——知识点补给站:
正则表达式中的三组括号把匹配结果分成三组:
- m.groups()所有匹配的字符(即匹配正则表达式整体结果);
- groups()[0] 列出第一个括号匹配部分,groups()[1] 列出第二个括号匹配部分,groups()[2] 列出第三个括号匹配部分;
- m.groups() 返回所有括号匹配的字符,以tuple格式。是可以直接解包的哦~
🔆In The End!
👑有关于Me
个人简介:我是一个硬件出身的计算机爱好者,喜欢program,源于热爱,乐于分享技术与所见所闻所感所得。文章涉及Python,C,单片机,HTML/CSS/JavaScript及算法,数据结构等。
| 从现在做起,坚持下去,一天进步一小点,不久的将来,你会感谢曾经努力的你! |
|---|
认真仔细看完本文的小伙伴们,可以点赞收藏并评论出你们的读后感。并可关注本博主,在今后的日子里阅读更多技术文哦~
如有错误或者言语不恰当的地方可在评论区指出,谢谢!
如转载此文请联系我征得本人同意,并标注出处及本博主名,谢谢 !