re模块

正则:

正则就是用一些具有特殊含义的符号组合到一起(称之为正则表达式)来描述字符或字符串的方法。或者说:正则就是用描述一类事物的规则。(在python中) 它内嵌在python中,并通过re模块来实现。正则表达式模式被编译成一系列的字节码,然后用C编写的匹配引擎执行。

二、常用匹配模式(元字符)

要先导入re模块,配合正则表达式:、

import re

\w:匹配字母数字及下划线
print(re.findall('\w','ajllhs_127sji%&^h_9'))
#打印结果:
['a', 'j', 'l', 'l', 'h', 's', '_', '', '', '', 's', 'j', 'i', 'h', '_', ''] \W :匹配非字母数字下划线
print(re.findall('\W','shuk*&%^-_=|sjf98'))
#打印结果
['*', '&', '%', '^', '-', '=', '|'] \s:匹配任意空白字符,等价于[\t\n\f\r]
print(re.findall('\s',' \n6si(*-=\rj8hs*%#\t'))
#打印结果
[' ', '\n', '\r', '\t'] \S 匹配任意非空白字符
print(re.findall('\S',' r\r4$^*(\njsh\t@!'))
#打印结果
['r', '', '$', '^', '*', '(', 'j', 's', 'h', '@', '!'] \d匹配任意数字等价于[-]
print(re.findall('\d','js&*\r89$46#0\'/j'))
#打印结果
['', '', '', '', ''] \D匹配任意非数字
print(re.findall('\D','js&*\r89$46#0\'/j'))
#打印结果
['j', 's', '&', '*', '\r', '$', '#', "'", '/', 'j'] \A 匹配字符串的开始
print(re.findall('\Aada','123ada sijhada'))
#打印结果:[] 以ada为字符串的开始, 没有则给出一个空列表
print(re.findall('\Aada','ada12ada sijhada'))
#打印结果 ['ada'] 只提取开头的 ada,之后再有的都不会提取,因为后面的都不是以ada开头了。 一般\A不用, 而用^来代替
print(re.findall('^ada','123ada sijhada'))
#打印结果:[] 以ada为字符串的开始, 没有则给出一个空列表, 效果等同于print(re.findall('\Aada','123ada sijhada')) \Z 匹配字符串结束,如果存在换行,只匹配到换行钱结束的字符串
print(re.findall('nb\Z','adaxjshi&*)12sbw('))
打印结果为 [ ] 因为不是以nb结尾的字符串 print(re.findall('nb\Z','adaxjshi&*)12nbnbnb'))
#打印结果为 ['nb'] 是以nb结尾的,且不关里面有多少个nb 只取结尾的那个nb \Z一般也不用而是用$来代替用法同\Z 一米一样
print(re.findall('nb$','adaxjshinbnbnb'))
#打印结果 ['nb'] \n 匹配换行符
print(re.findall('\n','sh\n268*&()kl\n'))
#打印结果 ['\n', '\n'] \t 匹配制表符
print(re.findall('\t','sh\t268*&()kl\t'))
#打印结果 ['\t', '\t'] . 匹配任意一个字符 ,除了换行符。当re.DOTALL标记被指定时, 则可以匹配包括换行符的任意字符
print(re.findall('a.b','anxb jianbkh ahba\rb a\nb'))
#打印结果['anb', 'ahb', 'a\rb'] 第一个anxb 不能匹配因为中间有两个字符,.只能匹配一个, 后面的a\nb 也不能匹配,\n 是换行符。
print(re.findall('a.b','anxb jianbkh ahba\rb a\nb',))
#打印结果['anb', 'ahb', 'a\rb', 'a\nb']
import re

[...]代表用来表示  一组字符串找那个单独列出
print(re.findall('a...c','amkbcsc abbyc'))
#打印结果 # 打印结果 ['a', 'c', 'c', 'a', 'c'] 单独列出a c [^...] 代表用来表示 不在[] 中的字符
print(re.findall('[^bcd]','abcdsad, sjdmhsmzsc'))
# 打印结果:['a', 's', 'a', ',', ' ', 's', 'j', 'm', 'h', 's', 'm', 'z', 's']

常用模块 re模块与正则表达式的更多相关文章

  1. python-Day5-深入正则表达式--冒泡排序-时间复杂度 --常用模块学习:自定义模块--random模块:随机验证码--time & datetime模块

    正则表达式   语法:             mport re #导入模块名 p = re.compile("^[0-9]") #生成要匹配的正则对象 , ^代表从开头匹配,[0 ...

  2. 常用模块re模块(正则表达式)

    re模块 一:什么是正则? 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则.(在Python中)它内嵌在Python中, ...

  3. python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则

    python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib  subprocess ...

  4. re模块(Python中的正则表达式)

    re模块 正则表达式本身是一种小型的.高度专业化的编程语言,而在python中,通过内嵌集成re模块,程序媛们可以直接调用来实现正则匹配.正则表达式模式被编译成一系列的字节码,然后由用C编写的匹配引擎 ...

  5. 常用的re模块的正则匹配的表达式

    07.01自我总结 常用的re模块的正则匹配的表达式 一.校验数字的表达式 1.数字 ^[0-9]\*$ 2.n位的数字 ^\d{n}$ 3.至少n位的数字 ^\d{n,}$ 4.m-n位的数字 ^\ ...

  6. Python常用内建模块

    Python常用内建模块 datetime 处理日期和时间的标准库. 注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import da ...

  7. 转:Yii实战中8个必备常用的扩展,模块和widget

    转载自:http://www.yiiframework.com/wiki/180/yii8/ 在经过畅K网的实战后,总结一下在Yii的项目中会经常用到的组件和一些基本的使用方法,分享给大家,同时也给自 ...

  8. s14 第5天 时间模块 随机模块 String模块 shutil模块(文件操作) 文件压缩(zipfile和tarfile)shelve模块 XML模块 ConfigParser配置文件操作模块 hashlib散列模块 Subprocess模块(调用shell) logging模块 正则表达式模块 r字符串和转译

    时间模块 time datatime time.clock(2.7) time.process_time(3.3) 测量处理器运算时间,不包括sleep时间 time.altzone 返回与UTC时间 ...

  9. Python之常用模块--collections模块

    认识模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的 ...

随机推荐

  1. JavaScript事件在WebKit中的处理流程研究

    本文主要探讨了JavaScript事件在WebKit中的注冊和触发机制. JS事件有两种注冊方式: 通过DOM节点的属性加入或者通过node.addEventListener()函数注冊: 通过DOM ...

  2. js json按key值排序

    最近有个需求需要把json按key值进行排序,可是js并没有直接的函数可以对json进行排序的这么办呢? 然后想到了一个间接的方法来实现: 1.将json中的key值取出,存在一个数组中,然后对这个数 ...

  3. 关于erlang解析json数据

    JSON(JavaScript Object Notation)是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读.json的数据格式是文本文档格式的一种.在erlang中可以参考mochiwe ...

  4. unity 接触一个月的感受和心得

    unity scrollview 遇到的问题 一个scrollview作为翻页,这样的效果调整. 一页上面有三个scrollview,这三个scrollview上的items不受下层整个页面的scro ...

  5. asp.net mvc4 之Webapi之客户端或服务器端安全控制

    一.WebAPI的工作方式 WebAPI的工作方式:HTTP的请求最先是被传递到HOST中的,如果WebAPI是被寄宿在IIS上的,这个HOST就是IIS上,HOST是没有能力也没有必 要进行请求的处 ...

  6. Hadoop实战-Flume之Hello world(九)

    环境介绍: 主服务器ip:192.168.80.128 1.准备apache-flume-1.7.0-bin.tar文件 2.上传到master(192.168.80.128)服务器上 3.解压apa ...

  7. HTML 常用组件

    1.下拉选择 <select id="select" name="select" class="form-control"> & ...

  8. appium(4)-Automating mobile web apps

    Automating mobile web apps If you’re interested in automating your web app in Mobile Safari on iOS o ...

  9. Struts2中properties

  10. 将前端文件和Go程序打包

    我今天项目上碰见个需求,前端小哥给我写了个页面,要搭配我的Go程序一起使用,突然想到Go可以打包静态页面,而且调用也很方便,所以操作了一下,成功,我把它记录下来,作为以后的回顾和复习. 首先,我们需要 ...