美文网首页我爱编程
正则表达式笔记

正则表达式笔记

作者: SWJTU_CC | 来源:发表于2018-04-15 21:58 被阅读0次

1.正则表达式是使用单个字符串来描述匹配一系列符合某个句法规则的字符串。比如查找以http开图以jpg结尾的字符串。

2.是对字符串操作的一种逻辑公式。

3.处理文本和数据.

4.正则表达式过程:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功;否则匹配失败。

5.需要在开头引入 import re

6.正则表达式语法   -----使用正则表达式匹配单个字符。

7.使用正则表达式表示多个字符。

8.使用正则表达式进行边界匹配

9.使用正则表达式分组匹配。



代码部分

import re

strl ='iMooc python'

result1 = strl.find('11')#输出-1表示匹配失败4

result2 = strl.find('imooc')#输出0表示匹配成功

# print (result1)

# print (result2)

pa = re.compile(r'imooc',re.I)#前面加r的原因是代表原字符串,即不需要转义。如果后面有\n则表示是字符\和n,不是代表换行

#re.I表示忽略大小写,ignore,虽然上面的M大写也能识别出来。

ma = pa.match(strl)

print (ma.string)#匹配的字符串

print (ma.span())#匹配的位置是从0到5

#正则语法..两个点表示匹配两个任意字符(除了\n)  上面的ma是没有goup的

ma2 = re.match(r'..','01SADA12')

ma3 = re.match(r'[A-Z][a-z]*','Asdftgg')#大写字母开头,后面小写字母0个到无穷个。

ma4 = re.match(r'[_a-zA-Z]+[\W]*','asd$*&^$%')

ma5 = re.match(r'[1-9]?[0-9]','09*')#匹配0-99的数字,只会匹配0,后面就9不会匹配。

ma6 = re.match(r'[1-9]?[0-9]','56')#匹配0-99的数字

ma7 = re.match(r'[a-zA-Z0-9]{6,10}@163.com','abc123asdk@163.com')#只会匹配到abc123六到十位,如果多了一位,则第十一位不匹配,如果少了一位比如是abc12,那么则会没有group

ma8 = re.match(r'[0-9][a-z]*?','1bc')#非贪婪模式:尽可能的少匹配第一个数字之后的字母,所以后面的bc都不匹配了,只匹配了1.  +* ?*同理

ma9 = re.match(r'^[\w]{6,10}@163.com$','abc123asdk@163.com')#必须以@163.com结尾,字母开头。

ma10 = re.match(r'[0-9]?\d$|100','99')#匹配0到100的数字。

ma11 = re.match(r'^[\w]{6,10}@(163|126).com$','abc123asdk@126.com')#163或者126邮箱结尾。

ma12 = re.match(r'<([\w]+>)([\w]+)python')

# ma12 = re.match(r'<[\w]+>[\w]+','python')

ma13 = re.match(r'<(?P[\w]+>)[\w]+python') #用名字去引用分组。

print ('ma2='+ma2.group())

print ('ma3='+ma3.group())

print ('ma4='+ma4.group())

print ('ma5='+ma5.group())

print ('ma6='+ma6.group())

print ('ma7='+ma7.group())

print ('ma8='+ma8.group())

print ('ma9='+ma9.group())

print ('ma10='+ma10.group())

print ('ma11='+ma11.group())

print ('ma12='+ma12.group())

print ('ma13='+ma13.group())

相关文章

  • 学习笔记 正则表达式

    2021.01.19 北京海淀 -2℃ 小雪转晴 正则表达式学习笔记 说明:该笔记参考“菜鸟教程”网站正则表达式...

  • 笔记:正则表达式

    正则表达式基础部分笔记

  • js高级(四)

    JavaScript高级第04天笔记 1.正则表达式概述 1.1什么是正则表达式 正则表达式( Regular E...

  • 正则表达式学习笔记

    正则表达式学习笔记 一篇记录了学习正则表达式的笔记。 1. 转义字符 在 HTMl 中转义字符以 & 符号开头,分...

  • JavaScript正则表达式

    JavaScript 正则表达式 @(笔记)[正则表达式] 第一章 课程简介 1-1 JS正则表达式简介及应用 课...

  • Python学习随笔

    本笔记整理自中谷教育在线教育视频 学习笔记——正则表达式常用符号 这里学习过正则表达式后,简单做了一个爬虫程序,效...

  • 作业-第04周--课堂-Day15-正则表达式与三剑客知识应用实

    Day15 课堂笔记 1. 正则表达式 什么是正则表达式? 简单地说,正则表达式就是为了处理大量的字符串及文本而定...

  • 一个程序员的自我学习第一天

    《正则表达式必知必会》笔记 第一章:正则表达式入门 1:正则表达式是一些用来匹配和处理文本的字符串。正则...

  • Python ☞ day 11

    Python学习笔记之 正则表达式 re模块概述:Python自1.5以后增加了re的模块,提供了正则表达式模式...

  • Python3.5笔记——第11章 正则表达式

    Python3.5笔记 第11章 正则表达式 认识正则表达式 正则表达式是一个特殊字符序列,能够帮助用户检查一个字...

网友评论

    本文标题:正则表达式笔记

    本文链接:https://www.haomeiwen.com/subject/hpdjkftx.html