本文介绍Python的正则,通过本文介绍和一个练习,对正则有一个基本了解就可以。

 1 # 正则表达式
 2 '''
 3 正则表达式是有一些特殊字符组成,能够帮你找到一些符合一定规则的字符串
 4 先来了解几个符号所代表的意思
 5 \d   匹配所有的数字
 6 \D   匹配所有,但是数字除外
 7 \s   空格
 8 \S   匹配所有但是空格除外
 9 \w   匹配所有的字母
10 \W   匹配所有但是字母除外
11 .    任意除换行符 \n
12 \.   表示点符号,斜杠本身是转义字符
13 关于正则知识应用,推荐一篇文章:http://www.toutiao.com/i6411296780985565698/
14 常见的表达式举例:
15 {1,3}  表示数字1到3范围
16 +      匹配1个或者更多
17 ?     匹配0个或者1个结果
18 *      匹配0个或者更多结果
19 $      匹配字符串的结尾部分
20 ^      匹配字符串的开始部分
21 |      匹配左右表达式任意一个
22 []     字符集任意范围,例如[A-Z]表示大写A到Z
23 {x}    计算一共找到x的数量
24 一些空格符:
25 \n     换行
26 \s     空格
27 \t     一个tab,制表符
28 \e     转换字符串,转义
29 \f     form feed
30 \r     return
31 记住这些:
32 . + * ? [ ] $ ^ ( ) { } | \
33 '''
34
35 # 举例一个应用
36 import re
37
38 exampleString = '''
39 Anthony is 18 years old, and Daniel is 27 years old.
40 Tom is 78 and his grandfather,Bob is 102.
41 '''
42 # \d表示所有数字,{1,3}表示1到3范围的数字
43 ages = re.findall(r'\d{1,3}', exampleString)
44
45 # 下面的*表示匹配多个大写A-Z或者小写a-z
46 names = re.findall(r'[A-Z][a-z]*', exampleString)
47 print(ages)
48 print(names)
49
50 # 我们把姓名和年龄信息保存到一个字典,然后输出
51 # 先定义一个空字典
52 ageDict = {}
53
54 x = 0
55
56 for eachName in names:
57     # 把名称作为键,年龄作为值,根据名称去设置年龄值,这样就匹配上
58     ageDict[eachName] = ages[x]
59     x+=1
60 print(ageDict

转载于:https://www.cnblogs.com/wangyinghao/p/10675507.html

Python 3基础教程32-正则相关推荐

  1. Python培训基础教程都教哪些

    根据相关数据统计,目前学习Python技术的同学大多数是零基础,都是从其他行业转型来学习的,那么Python培训基础教程都教哪些呢?好不好学呢?来看看下面的详细介绍. Python培训基础教程都教哪些 ...

  2. python基础代码库-python爬虫基础教程:requests库(二)代码实例

    get请求 简单使用 import requests ''' 想要学习Python?Python学习交流群:973783996满足你的需求,资料都已经上传群文件,可以自行下载! ''' respons ...

  3. Python机器学习基础教程-第2章-监督学习之K近邻

    前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...

  4. 回归素材(part4)--python机器学习基础教程

    学习笔记,仅供参考 文章目录 python机器学习基础教程 线性模型 用于回归的线性模型 过拟合 岭回归 lasso python机器学习基础教程 线性模型 用于回归的线性模型 过拟合

  5. 泛化,过拟合,欠拟合素材(part1)--python机器学习基础教程

    学习笔记,仅供参考,有错必纠 文章目录 python机器学习基础教程 泛化.过拟合.欠拟合 模型复杂度与训练集大小的关系 python机器学习基础教程 泛化.过拟合.欠拟合 判断一个算法在新数据上表现 ...

  6. python数据分析基础教程 numpy_Python数据分析基础教程:NumPy学习指南(第2版)

    Python数据分析基础教程:NumPy学习指南(第2版) Ivan Idris (作者) 张驭宇 (译者) NumPy是一个优秀的科学计算库,提供了很多实用的数学函数.强大的多维数组对象和优异的计算 ...

  7. python基础教程免费下载-《Python机器学习基础教程》高清版免费PDF下载

    Python机器学习基础教程-[德] 安德里亚斯·穆勒(Andreas C.Müller)[美]莎拉·吉多(Sarah Guido) 著,张亮(hysic) 译 下载地址1:网盘下载 下载地址2:网盘 ...

  8. python入门基础教程-Python入门基础教程:WSGI

    原标题:Python入门基础教程:WSGI WSGI 简介 WSGI 是什么 WSGI 是 Python Web Server Gateway Interface 的缩写,是描述 Web 服务器与 P ...

  9. [转载] Python OpenCV 基础教程

    参考链接: python opencv 基础5 : putText() 为图像增加文本 Python OpenCV基础教程 文章目录 Python `OpenCV`基础教程1. 简介2. 安装3. 使 ...

  10. Python机器学习基础教程(1)Irises(鸢尾花)分类之新手上路

    一.感谢博客的内容提供的参考 标题:最新版学习笔记---Python机器学习基础教程(1)Irises(鸢尾花)分类---附完整代码 作者:非鱼子焉 地址:https://zhu-rui.blog.c ...

最新文章

  1. 【合并单元格】纵向合并单元格之前对数组处理【针对饿了么element的table的span-method合并行或列的计算方法】
  2. taro 如何使用dom_taro 事件处理
  3. 【Spring注解驱动开发】java工作流引擎框架
  4. GitHub优秀开源项目收集
  5. tf.variable_scope和tf.name_scope的用法
  6. .Net里一个用于驱动摄像头的类
  7. jmeter生成优美的压力测试报告,jmeter生成html压测报告,jmeter压力测试
  8. java 学习书籍 转载
  9. 男子欲刺杀游戏公司创始人被抓,还是游戏里“兔女郎”惹的祸?
  10. 防止页面的重复提交,刷新
  11. 性能测试工具 wrk 安装与使用
  12. 小米路由器3无线网连接到服务器,小米路由器3设置完成后,手机能用,电脑没法上网...
  13. ESXI安装部署方法
  14. 什么是信道编码?信道编码比较
  15. 功率因数 matlab,matlab功率因数测量
  16. AcWing 143. 最大异或对 —— 神奇的二进制
  17. docker-compose up -d --build不会更新镜像;什么时候容器会变更
  18. DBCO-C6-NHS ester,1384870-47-6二苯基环辛炔-碳6-琥珀酰亚胺酯仅用于科研,不用于人体和生产
  19. Motion Planning中的问题与挑战
  20. DingTalk「开发者说」如何开发钉钉高价值应用三部曲

热门文章

  1. tensorflow2.x版本无法调用gpu的一种解决方法
  2. Linux内存初始化(C语言部分)
  3. Gradle不匹配报错的终极大招(gradle插件版本和gradle版本对应关系)
  4. JZOJ 5406. 【NOIP2017提高A组模拟10.10】Tree
  5. oracle从一个表insert语句,Oracle 使用PLSQL 导出 一个表的insert 语句
  6. python怎么安装turtle_Python3.6安装turtle模块
  7. linux常见命令_Linux系统常见命令
  8. linux redhat5.5终端打不开,为什么在 RedHat Linux 5 下不能使用 ifconfig 命令
  9. 个人常用word技巧----平时编辑word能快不少~
  10. 【五校联考7day2】QYQ的图