匹配(matching):判断一个字符串能否从起始位全部或部分的匹配某个模式

搜索(seaching):在字符串任意部分中搜索

1.1、特殊字符

注:若要匹配这些字符本身,在其前面加 ‘\’

1.2、从字符串起始或结尾或单词边界匹配

  • 边界绑定
1 '^.....' | ‘\A.......’     匹配 以‘.......’开头的字符串
2 '.....$' | ‘.......\Z’ 匹配 以‘.......’结尾的字符串
3 '^.....$' | ‘\A.......\Z’ 匹配 单独由‘.......’组成的字符串
1 '\b.....'      匹配 以‘.......’开头的字符串
2 '\b.....\b' 仅仅含‘.......’的字符串
3 '\B.....' 匹配包含但 不以‘.......’开头的字符串

1.3

  • 使用re.match()方法匹配字符串

从字符串起始部分进行对模式的匹配

1 str1 = '[1-9](0|9)'
2 m = re.match(str1, '1000') #match(RE,str) RE:正则表达式 str:待被匹配的字符串 匹配成功返回特定子组,否则返回None
3 print(m.group()) #返回匹配对象 其中可加index,返回第index个子组
4 print(m.groups()) #没有子组要求时,返回空元组 子组:正则表达式中对应的()里的内容
》》》19
》》》('9',)
  • 使用re.search()在字符串中查找模式

从左到右搜索第一次出现匹配的情况,若要从字符串起始开始匹配,则应在正则表达式中添加 '^' ,也可添加 '$'

1 import re
2 str1 = '[1-9](0|9)'
3 m = re.search(str1, '00010000') #search(RE,str) RE:正则表达式 str:待被匹配的字符串 匹配成功返回特定子组,否则返回None
4 print(m.group()) #返回匹配对象
5 print(m.groups()) #没有子组要求时,返回空元组

Python全栈学习笔记---正则表达式(二)的更多相关文章

  1. python全栈学习笔记(二)网络基础之子网划分

    阅读目录 一.ip地址基本知识 1.1 ip地址的结构和分类 1.2 特殊ip地址 1.3 子网掩码 1.4 ip地址申请 二.子网划分 2.1 子网划分概念 2.2 c类子网划分初探 2.3 子网划 ...

  2. python全栈学习笔记(一)网络基础之网络协议篇

    阅读目录 一.操作系统基础 二.网络通信原理 2.1 互联网的本质就是一系列的网络协议 2.2 osi七层协议 2.3 tcp/ip五层模型讲解 2.3.1 物理层 2.3.2 数据链路层 2.3.3 ...

  3. python全栈学习笔记(三)网络基础之网络设备及架构介绍

       

  4. python全栈学习路线

    python全栈学习路线-查询笔记 查询目录 一,硬件                                                                    十一,数据 ...

  5. python全栈开发之正则表达式和python的re模块

    正则表达式和python的re模块 python全栈开发,正则表达式,re模块 一 正则表达式 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的 ...

  6. Python全栈开发【基础二】

    Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...

  7. python网络爬虫学习笔记(二)BeautifulSoup库

    Beautiful Soup库也称为beautiful4库.bs4库,它可用于解析HTML/XML,并将所有文件.字符串转换为'utf-8'编码.HTML/XML文档是与“标签树一一对应的.具体地说, ...

  8. Python快速入门学习笔记(二)

    注:本学习笔记参考了廖雪峰老师的Python学习教程,教程地址为:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb49318210 ...

  9. 老男孩Python九期全栈学习笔记4

    ---恢复内容开始--- day4 1.作业回顾 1.有变量name = 'aleX leNb',完成如下操作: 1)移除 name 变量对应的值两边的空格,并输出处理结果 2)移除 name 变量左 ...

  10. 老男孩Python九期全栈学习笔记3

    day3 1.上周五内容回顾 格式化输出:%s %d %%:输出% 编码: ASCII码只能显示英文.数字和特殊字符. Unicode:万国码,最开始使用16位表示一个字符,中文不够,后来使用4个字节 ...

随机推荐

  1. 集合框架-Collection集合

    集合框架 JAVASE提供了满足各种需求的APl,在使用这些API前,先了解其继承与接口操作架构,才能了解何时采用哪个类,以及类之间如何彼此合作,从而达到灵活应用.集合按照其存储结构可以分为两大类,分 ...

  2. 【SW】利用3D打印机打印 PCB 钢网的方法

    每完成一个小作品以后,PCB打样回来,手工焊接着费时费力,定制钢网又未免太过浪费,想到自己有一台 FDM 3D 打印机,是不是可以通过 3D 打印机打印 "钢网" 呢? 在网上也翻 ...

  3. 12月23日内容总结——csrf跨站请求伪造、校验策略、相关装饰器,auth认证模块及相关操作,拓展auth_user表

    目录 一.csrf跨站请求伪造 概念引入 概念讲解 二.csrf校验策略 概念讲解 form表单操作csrf策略 ajax请求csrf策略 三.csrf相关装饰器 四.auth认证模块 五.auth认 ...

  4. 【学习日志】MongoDB为什么选择B树,而MySQL选择B+树实现索引

    先说B树和B+树的区别 B树:非叶子节点也存储数据 B+树:只有叶子节点存储数据,且所有叶子节点通过指针相连接. 为什么MongoDB选择B树而,MySQL选择B+树呢?两种数据结构的区别摆在上面了, ...

  5. mysql13 sql优化-explain

    1.Explain Explain可以对sql语句的执行性能进行分析.使用EXPLAIN关键字可以模拟优化器执行SQL查询语句,从而知道MySQL是如何处理你的SQL语句的.分析你的查询语句或是表结构 ...

  6. day13-自定义拦截器

    自定义拦截器 1.什么是拦截器 说明: 拦截器与过滤器的区别 SpringMVC 的拦截器(Interceptor)与 Java Servlet 的过滤器(Filter)类似,它主要用于拦截用户的请求 ...

  7. http协议介绍,token和session原理

    1.http协议 https://www.cnblogs.com/lauhp/p/8979393.html 1. 定义 http Hyper Text Transfer Protocol,超文本传输协 ...

  8. java环境变量配置-最新版

    安装 百度"java下载"进入官网下载最新版,闭着眼睛安装: 配置jre 因java11以上不自带jre,需要我们自己配置,配置如下: # 终端进入jdk所在的目录后执行 bin\ ...

  9. 我做的FFmpeg开源C#封装库Sdcb.FFmpeg

    我做的FFmpeg开源C#封装库Sdcb.FFmpeg 写在前面: 该主题为2022年12月份.NET Conf China 2022我的主题,项目地址:https://github.com/sdcb ...

  10. vue还可以这样写

    1.这两种写法都可以: var vm = new Vue({ data(){ return { scaleFlag:'big', } }, //data:{}, created: function ( ...