匹配手机号

import  re
phoneRegex = re.compile(r'''((\d{3}|\(\d{3}\))?                 # area code(\s|-|.)?                        # separator(\d{3})                      # first 3 digits(\s|-|.)                        # separator(\d{4})                      # last 4 digits(\s*(ext|x|ext.)\s*(\d{2,5}))?  # extension)''', re.VERBOSE)

电话号码从一个“可选的” 区号开始, 所以区号分组跟着一个问号。因为区号可能只是 3 个数字(即\d{3}), 或括号中的 3 个数字(即(\d{3})), 所以应该用管道符号连接这两部分。可以对这部分多行字符串加上正则表达式注释# Area code,帮助你记忆(\d{3}|(\d{3}))?要匹配的是什么。
电话号码分割字符可以是空格(\s)、 短横(-) 或句点(.), 所以这些部分也应该用管道连接。这个正则表达式接下来的几部分很简单: 3 个数字, 接下来是另一个分割符, 接下来是 4 个数字。最后的部分是可选的分机号,包括任意数目的空格,接着 ext、 x 或 ext., 再接着 2 到 5 位数字。

匹配邮箱

emailRegex = re.compile(r'''([a-zA-Z0-9._%+-]+     # username@ # @ symbol[a-zA-Z0-9.-]+         # domain name(.[a-zA-Z]{2,4})   # dot-something)''', re.VERBOSE)

E-mail 地址的用户名部分是一个或多个字符,字符可以包括: 小写和大写字母、 数字、句点、 下划线、 百分号、 加号或短横。可以将所有这些放入一个字符分类: [a-zA-Z0-9._%+-]
域名和用户名用@符号分割,域名允许的字符分类要少一些,只允许字母、数字、句点和短横: [a-zA-Z0-9.-]。最后是“dot-com”部分(技术上称为“顶级域名”),它实际上可以是“dot-anything”。它有 2 到 4 个字符。

Python学习:正则表达式匹配手机号,邮箱相关推荐

  1. JS正则表达式匹配手机号

    JS中常用正则表达式举例一 JS正则表达式匹配手机号 大家好,有关正则表达式的基本知识在其它文章中已做了介绍: JS属性&方法详解 下面一起来看看JS中利用正则表达式匹配字符串的常用例子: 手 ...

  2. 用Python学习正则表达式

    转自:http://daydayup.is-programmer.com/posts/1200.html 用Python学习正则表达式 正则表达式 一般字符 []表示的字符类 {}表示重复 ^和$表示 ...

  3. 运用正则表达式匹配QQ邮箱

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1.首先创建一个新文件夹 1.命名好名字后用Visu ...

  4. 正则表达式匹配手机号、QQ号、邮箱

    import re #匹配邮箱 # def email_match(str1): # #12312313413@sdeqwe.com # res = re.findall(r"(\w{1,} ...

  5. 正则表达式 匹配电子邮箱

    首先推荐两个学习正则表达式的网站 一. https://regexper.com 这个网站是把正则表达式可视化,效果如图所示 二. https://regexr.com/ 这个网站是对正则表达式进行解 ...

  6. Python学习——正则表达式与re模块实现字符串计算器

    学习了python的正则表达式后,一片懵逼,不知道干啥用的,也不知道咋用,只能放一些实例和正则表达式的规则以备后续查阅,希望在经过长时间的训练和使用后能对正则表达式有一个深刻的理解.什么是正则表达式呢 ...

  7. 学习正则表达式 - 匹配 Unicode 和其他字符

    目录 一.匹配 Unicode 字符 1. 匹配 emoji 符号 (1)确定 emoji 符号的 Unicode 范围 (2)emoji 符号的存储 (3)正则表达式匹配 2. 匹配中文 (1)确定 ...

  8. python实现正则表达式匹配

    题目描述 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配. . 匹配任意单个字符 * 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖整个字符串 s ...

  9. python爬虫正则表达式匹配为空的问题

    在用正则表达式匹配网址信息的时候,经常会匹配到空的列表.这个问题确实很烦,我当初也在这个地方卡了好长时间,所以就打算写一个博客来好好整理一下正则表达式匹配为空的一些状况. 一:选取正则表达式的方式不对 ...

最新文章

  1. 美国发布《评估和强化制造与国防工业基础及供应链弹性》报告
  2. QT关于全局变量的申请以及使用,所有class可用同一个变量
  3. VMware迁移到OpenStack私有云要了解的那些事
  4. Mac终端shell类型bash和zsh切换
  5. c# 字典排序_Python零基础入门之列表与字典
  6. android从服务检查,android开发分享Android:你如何检查是否启用了特定的AccessibilityService...
  7. 成功运行官方Tensorflow Android的demo的过程
  8. js【Object.prototype.hasOwnProperty()方法】
  9. 【嵌入式】牧马人G3 电子竞技鼠标拆解分析
  10. 计算机上网记录怎么清除,电脑浏览器上网记录怎么删除
  11. LeetCode罗马数字转整数
  12. 带壳截图 android,给手机截屏带个「套」:带壳截图应用合辑
  13. 苹果app一键签名工具开发者专用版 (iOS签名工具,苹果签名工具。ipa签名工具)
  14. 基于ubuntu系统的HEVC视频编码与解码
  15. navicat点击连接出现2059catching_sha2_password错误
  16. CentOS7下安装jmeter5.3
  17. js绑定onblur事件
  18. 小程序报错:Failed to load local image resource /pages/goods/NaN加载资源失败问题解决
  19. VHDL语言基本单元及其构成——EDA学习笔记(一)
  20. python web

热门文章

  1. 这些考研神器,我居然现在才知道!
  2. 【CentOS】CentOS镜像文件各个版本的区别
  3. 卡在应用计算机设置密码,sd卡加密软件的选择以及如何给sd卡设置密码、加密?...
  4. Android与IOS测试区别
  5. 博客能赚钱吗?如何赚钱
  6. FANUC机器人:先执行指令功能/后执行指令功能介绍与使用方法
  7. Luogu P3224 [HNOI2012]永无乡
  8. 【转】实战USB接口手机充电 看3.0/2.0谁更快
  9. LAN-401信号处理模块
  10. axios post 400 状态码