【前修知识】

match :匹配    span:范围

match 是从头往后开始匹配,search不按照顺序,直接获取自己想要的,有就显示,没有就None

r 代表反转义,前面也提到过这个知识,如果我们在获取东西的过程中,都不需要反转义的东西,往前就加个r就行,如果是有特殊含义的就给反转义,没有特殊含义的也没事

我们只需要记住,正则表达式:符号+方法

1、为什么用到正则表达式?

帮我们匹配内容,获取里面的信息

如果使用切片,下标什么的太过于麻烦,再加上如果开发者在写的时候打了空格,而你可能不知道空格多少,会发生一些错误,换言之需要一个能准确提取信息的方法

正则表达式的流程是:先匹配再提取

 

2、正则表达式的基本特征

-----先进行导入正则,分析结果,得到一个match对象,下标范围是(0,3),匹配内容是www

我们用group来获取匹配的内容

接下来,来观察匹配的性质,对于match来说,是从前往后匹配的

这个例子可以看出,无法匹配显示None(可以理解一点None就是一个假的,None没有任何属性),更别说想拿到你本想匹配的taobao

对于search来说,就直接搜索这个匹配内容

3、正则表达式的延伸

3.1、表示字符的

1、从头开始匹配的,且匹配一个字符(.)

2、就是在[ ]里面任取一个进行匹配,而match的方法呢,是从前往后的,获取匹配的结果自然从前往后

---没有

[ ]里面其实是三个都有,任取一个,而方法是从前往后

验证上面

【将两个正则放一块的效果】

放入中括号里面的点,特殊含义已经失效,普通字符点(.)

 

【a到z任意一个】

如果换用大写的范围,直接放到后面,要明白这个意思,加空格可代表一个字符

【0到9任意一个】

----【改用search方法效果】

任取一个,不就a

3、专门匹配数字,也就是0到9的(专业)(\d)

4、专门匹配非数字(\D)

5、匹配空白,也就是空格(\s)--常用

匹配非空格(\S)

点是默认一个长度,点是不能匹配换行

可以看出,能够获取空白字符串

\t 也能拿到空格

\n 也能拿到空格

【后面是陆续增加方法:】

6、匹配单词(\w)--匹配所有的文字、下划线和数字

特殊字符

汉字

标点符号

数字

下划线

------第二个只能匹配ASCLL码,所以报错

7、中文

默认匹配unicode

匹配中文字符的正则表达式: [\u4e00-\u9fa5]



【正则表达式】--python(表示字符)的更多相关文章

  1. 【python】正则表达式-正则表达式常见的字符和符号表

    正则表达式常见的字符和符号表:

  2. Python基础-字符编码与转码

    ***了解计算机的底层原理*** Python全栈开发之Python基础-字符编码与转码 需知: 1.在python2默认编码是ASCII, python3里默认是utf-8 2.unicode 分为 ...

  3. C#正则表达式匹配任意字符

    原文:C#正则表达式匹配任意字符 不得不说正则很强大,尤其在字符串搜索上 匹配任意字符,包括汉字,换行符: [\s\S]*. 版权声明:本文为博主原创文章,未经博主允许不得转载.

  4. Python中文字符的理解:str()、repr()、print

    Python中文字符的理解:str().repr().print 字数1384 阅读4 评论0 喜欢0 都说Python人不把文字编码这块从头到尾.从古至今全研究通透的话是完全玩不转的.我终于深刻的理 ...

  5. Python的字符编码

    Python的字符编码 1. Python字符编码简介 1. 1  ASCII Python解释器在加载.py文件的代码时,会对内容进行编码,一般默认为ASCII码.ASCII(American St ...

  6. Python常用字符编码(转)

    Python常用字符编码   字符编码的常用种类介绍 第一种:ASCII码 ASCII(American Standard Code for Information Interchange,美国信息交 ...

  7. python生成字符画

    python生成字符画 这个idea来自于实验楼,非常适合练习PIL的像素处理,更重要的是非常有意思. 环境配置 依赖的第三方库就是PIL(Python Image Library),可以直接使用pi ...

  8. Python常见字符编码间的转换

    主要内容:     1.Unicode 和 UTF-8的爱恨纠葛     2.字符在硬盘上的存储     3.编码的转换     4.验证编码是否转换正确     5.Python bytes类型 前 ...

  9. python 3字符编码

    python 3字符编码 官方链接:http://legacy.python.org/dev/peps/pep-0263/ 在Python2中默认是ascii编码,Python3是utf-8编码 在p ...

  10. python文本 字符与字符值转换

    python文本 字符与字符值转换 场景: 将字符转换成ascii或者unicode编码 在转换过程中,注意使用ord和chr方法 >>> print(ord('a'))    97 ...

随机推荐

  1. 深入理解final和static关键字

    深入理解final和static关键字 参考:http://blog.csdn.net/qq1028951741/article/details/53418852 final关键字 final关键字可 ...

  2. LeetCode 169. Majority Element (众数)

    Given an array of size n, find the majority element. The majority element is the element that appear ...

  3. 博客迁移至 http://www.loveli.site

    对于博客园的Markdow 支持太过...,你懂的,  以后博客迁移至:http://www.loveli.site

  4. 2015-2016 ACM-ICPC, NEERC, Southern Subregional Contest J Cleaner Robot

    Cleaner RobotCrawling in process... Crawling failed Time Limit:2000MS     Memory Limit:524288KB     ...

  5. JAVAscript学习笔记 js异常 第二节 (原创) 参考js使用表

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. spring boot + thymeleaf 3 国际化

    在给spring boot 1.5.6 + thymeleaf 3进行国际化时,踩了一个坑(其实不止一个). 现象: 看到了吧, 就是取值的key, 后面被加了_en_US 或 _zh_CN, 以及前 ...

  7. JavaScript系列-----对象基于哈希存储(<Key,Value>之Value篇) (3)

    JavaScript系列-----Objectj基于哈希存储<Key,Value>之Value 1.问题提出 在JavaScript系列-----Object之基于Hash<Key, ...

  8. kafka学习笔记1:测试环境搭建

    最近因为架构中引入了kafka,一些之前在代码中通过RPC调用强耦合但是适合异步处理的内容可以用kafka重构一下. 考虑从头学一下kafka了解其特性和使用场景. 环境选择 首先是测试环境的搭建,平 ...

  9. Spring Boot单元测试(Mock)

    Spring Boot单元测试(Mock) Java个人学习心得 2017-08-12 16:07 Mock 单元测试的重要性就不多说了,我这边的工程一般都是Spring Boot+Mybatis(详 ...

  10. SSM框架搭建(Spring+SpringMVC+MyBatis)与easyui集成并实现增删改查实现

    一.用myEclipse初始化Web项目 新建一个web project: 二.创建包 controller        //控制类 service //服务接口 service.impl //服务 ...