python正则表达式之re模块其他方法

1:search(pattern,string,flags=0)

在一个字符串中查找匹配

2:findall(pattern,string,flags=0)

找到匹配,返回所有匹配部分的列表

In [1]: import re

In [2]: str1 = 'imoooc videonum = 1000'

In [3]: str1.find('')
Out[3]: 18 In [4]: info = re.search(r'\d+',str1) In [5]: info
Out[5]: <_sre.SRE_Match object; span=(18, 22), match=''> In [6]: info.gr
info.group info.groupdict info.groups In [6]: info.group()
Out[6]: '' In [7]: str1 = 'imoooc videonum = 10000' In [8]: info = re.search(r'\d+',str1) In [9]: info
Out[9]: <_sre.SRE_Match object; span=(18, 23), match=''> In [10]: info.group()
Out[10]: '' In [11]: str2 = 'c++=100, java=90, python=80' In [12]: info = re.search(r'\d+',str2) In [13]: info
Out[13]: <_sre.SRE_Match object; span=(4, 7), match=''> In [14]: info.group()
Out[14]: '' In [15]: info = re.find
re.findall re.finditer In [15]: info = re.findall(r'\d+',str2) In [16]: info
Out[16]: ['', '', ''] In [17]: sum([int(x) for x in info])
Out[17]: 270

3.sub(pattern,repl,string,count=0,flags=0)

将字符串中匹配正则表达式的部分替换为其他值

4.split(pattern,string,maxsplit=0,flags=0)

根据匹配分割字符串,返回分割字符串组成的列表

In [22]: str3 = 'imooc videonum = 1000'

In [24]: info = re.sub(r'\d+','',str3)

In [25]: info
Out[25]: 'imooc videonum = 1001' In [26]: def add1(match):
....: val = match.group()
....: num = int(val)+1
....: return str(num)
....: In [27]: str3
Out[27]: 'imooc videonum = 1000' In [28]: re.sub(r'\d+',add1,str3)
Out[28]: 'imooc videonum = 1001'
In [36]: str4 = 'imooc:C C++ Java Python'

In [37]: re.s
re.search re.sre_compile re.sub re.sys
re.split re.sre_parse re.subn In [37]: re.split(r':| ',str4)
Out[37]: ['imooc', 'C', 'C++', 'Java', 'Python'] In [38]: re.split(r':| |,',str4)
Out[38]: ['imooc', 'C', 'C++', 'Java', 'Python'] In [39]:

python正则表达式之re模块方法介绍的更多相关文章

  1. 5.Python安装依赖(包)模块方法介绍

    1.前提条件 1). 确保已经安装需要的Python版本 2). 确保已经将Python的目录加入到环境变量中 2. Python安装包的几种常用方式 1). pip安装方式(正常在线安装) 2). ...

  2. Python正则表达式与re模块介绍

    Python中通过re模块实现了正则表达式的功能.re模块提供了一些根据正则表达式进行查找.替换.分隔字符串的函数.本文主要介绍正则表达式先关内容以及re模块中常用的函数和函数常用场景. 正则表达式基 ...

  3. python正则表达式与re模块-02

    正则表达式 正则表达式与python的关系 # 正则表达式不是Python独有的,它是一门独立的技术,所有的编程语言都可以使用正则 # 但要在python中使用正则表达式,就必须依赖于python内置 ...

  4. python 正则表达式re使用模块(match()、search()和compile())

    摘录 python核心编程 python的re模块允许多线程共享一个已编译的正则表达式对象,也支持命名子组.下表是常见的正则表达式属性: 函数/方法 描述 仅仅是re模块函数 compile(patt ...

  5. 第11.13节 Python正则表达式的转义符”\”功能介绍

    为了支持特殊元字符在特定场景下能表示自身而不会被当成元字符进行匹配出来,可以通过字符集或转义符表示方法来表示,字符集表示方法前面在<第11.4节 Python正则表达式搜索字符集匹配功能及元字符 ...

  6. python的内置模块xml模块方法 xml解析 详解以及使用

    一.XML介绍 xml是实现不同语言或程序直接进行数据交换的协议,跟json差不多,单json使用起来更简单,不过现在还有很多传统公司的接口主要还是xml xml跟html都属于是标签语言 我们主要学 ...

  7. 【笔记】Python基础六:模块module介绍及常用模块

    一,module模块和包的介绍 1,在Python中,一个.py文件就称之为一个模块(Module). 2,使用模块的好处? 最大的好处是大大提高了代码的可维护性 其次,编写代码不必从零开始,我们编写 ...

  8. python 正则表达式 (重点) re模块

    京东的注册页面,打开页面我们就看到这些要求输入个人信息的提示.假如我们随意的在手机号码这一栏输入一个11111111111,它会提示我们格式有误.这个功能是怎么实现的呢?假如现在你用python写一段 ...

  9. Python正则表达式与hashlib模块

    菜鸟学python第十六天 1.re模块(正则表达式) 什么是正则表达式 正则表达式是一个由特殊字符组成的序列,他能帮助对字符串的某种对应模式进行查找. 在python中,re 模块使其拥有全部的正则 ...

随机推荐

  1. Invert Binary Tree(easy)

    1.直接把递归把左右子树翻转即可 AC代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * Tre ...

  2. 打不开gitHub的解决方法

    因为Github是国外网站,所以经常会遇到打不开的问题,并且有时能打开但是网速好慢 解决这个问题的方法是 : 在C:\Windows\System32\Drivers\etc下找到hosts文件,用记 ...

  3. php中级程序员的进化标准

    1 熟悉linux/unix操作系统,能够写些shell脚本2 能够搭建lamp环境3 熟练使用php,了解或使用过php扩展模块,使用过开源的php框架4 熟悉缓存技术,包括http协议的缓存,利用 ...

  4. UFT参数化

    1.Resources-Record and Run Settings 2.打开程序进行录制操作 3.对Fly from和Fly to进行参数化 4.选中点击 5.输入名称,点击OK 6.在Data加 ...

  5. python后端面试第七部分:项目部分--长期维护

    ##################    项目部分       ####################### 1,你怎么测试自己的代码的?自测 2,开发使用windows还是Linux,虚拟环境的 ...

  6. ZooTracer:打破传统追踪软件的束缚

    编者按:自今年2月24日起,用户可以免费从官网下载Zootracer试用.这是由来自微软剑桥研究院的Joppa和他的同事研发的桌面工具,可追踪任意画质的视频中任意移动物体行踪,是对对视频画质拍摄要求高 ...

  7. cs231n spring 2017 lecture2 Image Classification

    1. 相比于传统的人工提取特征(边.角等),深度学习是一种Data-Driven Approach.深度学习有统一的框架,喂不同的数据集,可以训练识别不同的物体.而人工提取特征的方式很脆弱,换一个物体 ...

  8. 1005 继续(3n+1)猜想 (25 分)

    题目:链接 卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数.例如对 n=3 ...

  9. Serializable中的serialVersionUID是必须的吗

    不写serialVersionUID就没有吗 即使不写, jdk反序列化时也会自动检查这个id, 反编译.class文件你也看不到这个值 rpc反序列化 如果使用jdk的方式, 这个必须配置 如果使用 ...

  10. valgrind 的使用简介

    zz自 http://blog.csdn.net/destina/article/details/6198443  感谢作者的分享! 一  valgrind是什么? Valgrind是一套Linux下 ...