【前修知识】

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. 获取Django项目的全部url

    在为一个项目添加权限时,遇到一个问题,就是为项目所有的url设置权限,但是一个一个手动输入太麻烦了,所以考虑用代码获取到一个项目所有的url 首先,考虑到项目最外层的urlpartterns,因为所有 ...

  2. 我推荐的 Java Web 学习路线

    晚上再 V2 的 Java 的节点看到有人问 Java Web 书籍推荐.我这半年多的时间,也从别的方向开始转向 Java 服务端开发,所以,我来说下我的学习路线,帮助有需要的朋友把半只脚踏进 Spr ...

  3. 仿微信抢红包(js 转)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. 无所不会的fiddler遇到的尴尬

    昨天测试项目时,遇到一个尴尬的事 预期功能:点击页面某个按钮会post2个请求 实际情况:点了按钮,fiddler抓包没有看到任何请求 后来经过他人提醒在PC端浏览器打开此页面,点击按钮后看到页面有j ...

  5. Django开发小型站之前期准备(一)

    语言:python3.5 工具:JetBrains PyCharm virtualenvwrapper优点: 1.使不同的应用开发环境独立 2.环境升级不影响其他应用,也不会影响全局的python环境 ...

  6. HDU1792A New Change Problem(GCD规律推导)

    A New Change Problem Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  7. 1087: [SCOI2005]互不侵犯King

    1087: [SCOI2005]互不侵犯King Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 4276  Solved: 2471[Submit][ ...

  8. maximum shortest distance

    maximum shortest distance Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...

  9. JavaScript 和 TypeScript 交叉口 —— 类型定义文件(*.d.ts)

    在 <从 JavaScript 到 TypeScript 系列> 文章我们已经学习了 TypeScript 相关的知识. TypeScript 的核心在于静态类型,我们在编写 TS 的时候 ...

  10. JQuery源码-------JQuery中数值型变量的判断isNumeric

    判断一个数值型变量的方法,在jquery中非常简单,只有一行代码. isNumeric: function( obj ) { // parseFloat NaNs numeric-cast false ...