主要的函数有  :

  • match()
  • search()
  • findall()
  • group()
  • groups()
  • split()
  1.  match (): 含义  开头匹配,匹配成功返回一个对象失败则返回  none

     #!/usr/bin/python
    import re
    re.match('youshi','youshini') print re.match 返回的结果:
    [root@Cnyunwei ~]# python 1.py
    <function match at 0x7f19e6f6c1b8> 2 不开头匹配
    #!/usr/bin/python
    import re   
    m=re.match('youshi','2222youshini')
                
    print  m    返回的结果: [root@Cnyunwei ~]# python 1.py
    None

    2.search()  和  match() 相似, 匹配成功返回一个对象失败则返回none,不通点在于它可以再一个字符串的任意位置匹配

     #!/usr/bin/python
    import re
    m=re.search('youshi','2222youshini') print m
    print '*'*50
    c=re.search('','')
    print c 结果:
    [root@Cnyunwei ~]# python 1.py
    <_sre.SRE_Match object at 0x7f39a18521d0>
    **************************************************
    None

    3.findall    返回一个匹配的列表:

 #!/usr/bin/python
import re
m=re.findall('youshi','2222youshini') print m
print '*'*50
c=re.findall('','')
print c ~ 结果:
[root@Cnyunwei ~]# python 1.py
['youshi']
**************************************************
[]

4. grop() 返回匹配的对象值 如返回match ()  和 search() 函数对象具体的值如果这两个函数返回的对象为空则用group()会报错

#!/usr/bin/python
import re
m=re.search('youshi','2222youshini') print m
m.group()
print '*'*50
c=re.search('','')
print c
c.group() ~
结果:
<_sre.SRE_Match object at 0x7fd4db65e1d0>
**************************************************
None 下面没有匹配会:
AttributeError: 'NoneType' object has no attribute 'group'

split   分割字符返回列表

 #!/usr/bin/python
import re
import os
os.system('who >1.who')
f=open('1.who','r') for i in f.readlines() :
print re.split('/s/s+|\t',i.strip())
print '*'*50 f.close()
结果:
[root@Cnyunwei ~]# python 1.who.py
['root tty1 2016-06-03 08:35']
**************************************************
['root pts/0 2016-06-03 12:10 (192.168.4.232)']
**************************************************
[root@Cnyunwei ~]# vim 1.who.py

浅谈python 中正则的一些函数的更多相关文章

  1. 浅谈python中的闭包函数

    闭包函数初探 通常我们定义函数都是这样定义的 def foo(): pass 其实在函数式编程中,函数里面还可以嵌套函数,如下面这样 def foo(): print("hello worl ...

  2. 浅谈python中得import xxx,from xxx import xxx, from xxx import *

    在python中import跟from import都是用来导入的,但是导入的机制不同 1.import xxx:导入模块,或者文件夹,对于调用模块或者文件夹中子模块的变量或者函数,需要使用" ...

  3. 浅谈python中文件和文件夹的相关操作

    文件操作 文件的打开与关闭 打开文件 使用open(文件名,访问方式)函数,可以打开一个已存在的文件,或者创建一个新的文件. 示例如下: f = open('test.txt') # 访问方式可以省略 ...

  4. 浅谈python中的“ ==” 与“ is”

    在python中,== 与 is 之间既有区别,又有联系,本文将通过实际代码的演示,力争能够帮助读到这篇文章的朋友以最短的时间理清二者的关系,并深刻理解它们在内存中的实现机制.扯淡的话不多说,下面马上 ...

  5. 浅谈Python中函数式编程、面向对象编程以及古怪的PythonIC

    1.函数式编程作为结构化编程的一种,正在受到越来越多的重视.那么什么事函数式编程呢? 在维基百科中给出了详细的定义,函数式编程又称泛函数编程,是一种编程规范,它将函数运算视为数学上的函数计算.简单的来 ...

  6. 浅谈python中字典append 到list 后值的改变问题

    看一个例子 ? 1 2 3 4 d={'test':1} d_test=d d_test['test']=2 print d 如果你在命令行实践的话,会发现你改动的是d_test ,但是d 也跟着改变 ...

  7. 浅谈Python 中 __getattr__与__getattribute__的区别

    __getattr__与__getattribute__均是一般实例属性截取函数(generic instance attribute interception method),其中,__getatt ...

  8. 浅谈python中的“ ==” 与“ is”、还有cmp

    总之,比较内容相等使用 ‘==’ 1.is" 是用来比较 a 和 b 是不是指向同一个内存单元,而"=="是用来比较 a 和 b指向的内存单元中的值是不是相等 2.pyt ...

  9. 浅谈python中__str__和__repr__的区别

    很多时候我们在创建一个类的时候,在终端打印类或者查看的时候一般都不会得到一个太满意的结果 class T: def __init__(self): self.color="red" ...

随机推荐

  1. oracle中单引号的处理

    当想让输出的结果中字段带有单引号', 场景一:连续三个单引号''' select '''helin''' from dual; ---'helin' 场景二:拼接字段的结果集--连续4个单引号 sel ...

  2. springMVC传递对象参数

    初学java,由于项目紧急,来不及仔细的研究,在传递参数时就老老实实的一个一个的采用@RequestParam注解方式传递,最近认真看了一下,发现java也具有类似Asp.net Mvc传递对象做参数 ...

  3. 相对URL:协议名跨域的一种处理方式

    问题现象 当页面地址协议与页面内请求地址协议不一致(不都是https或不都是http)时,往往请求会被拦截.控制台提示: 原因 浏览器对于JavaScript的同源策略的限制,简言之就是我们常说的跨域 ...

  4. DelayQueue延时队列示例

    介绍: DelayQueue是一个无界阻塞队列,只有在延迟期满时才能从中提取元素.该队列的头部是延迟期满后保存时间最长的Delayed 元素. 使用场景: 缓存系统的设计,缓存中的对象,超过了空闲时间 ...

  5. POI 详细介绍

    Apache POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目.目前POI已经有了Ruby版本. 结构: HSSF - 提供读写Microsoft Excel XLS格式 ...

  6. Nginx 实现反向代理

    Nginx 实现反向代理 两个域名指向同一台 Nginx 服务器,用户访问不同的域名显示不同的网页内容 两个域名分别是 www.test1.com www.test2.com 1.准备工作 下载及安装 ...

  7. 可编辑div,将光标定位到文本之后

    类似qq回复一样,某人评论之后,在对评论进行回复之后,将光标定位到文本之后: function set_focus() { el=document.getElementById('guestbook_ ...

  8. ASP.NET-POSTBACK是什么

    当我们直接从服务端读取网页时,表时此网页并没有post(提交),当用户再次提交表单时,就会把此网页的相关参数传给服务器处理,对于服务器来说就是一个postback(提交返回),即提交回来了.这就是po ...

  9. JavaScript正則表達式知识汇总

    Js 正則表達式知识汇总 正則表達式: 1.什么是RegExp?RegExp是正則表達式的缩写.RegExp 对象用于规定在文本中检索的内容. 2.定义RegExp:var +变量名=new RegE ...

  10. Servlet体验之旅(二)——Session、Cookie

    我们知道Session和Cookie都是用于会话跟踪的,仅仅是实现的方式不大一样,那么他们到底有什么不同呢?以下跟着我脚步来了解一下: Session.Cookie的含义: Session 一种ser ...