python语法_模块_re(正则表达)
字符串操作方法有:
s = 'hello word'
s.find('l') 查询第一个l的索引
s.replace('ll','xx') 替换
s.split('w') 以w进行分割
这些都是完全匹配,要进入模糊匹配就需要引进正则表达式
正则表达式,主要作为字符串模糊匹配的作用
正则 元字符
. 点 ret = re.findall('w.r','hello world') . 点除了换行符以外,可以代指任何字符,一个点代表一个字符,点叫做通配符
尖角符^ ret = re.findall('^w.r','hello world') 从字符串的开头开始匹配,只从字符串开头开始匹配
$ 符 ret = re.findall('w.r$','hello world') 只在字符串最后位置进行匹配,
* 重复匹配 ret = re.findall('wr*'hello world') 重复匹配 优先匹配*前第一个字符
+重复匹配 ret = re.findall('ab+','hello b word') 重复匹配,至少要一个b
? 重复匹配 ret = re.findall('a?b','aaaaaabsdsdabsdfsb') 重复0-1次a
{}重复匹配 ret = re.findeall('a{5}b','aaaaab') 重复匹配指定次数a,ret = re.findeall('a{1,3}b','aaasdasdn') 指定按区间匹配
[] 字符集 ret = re.findall('[a,b]','asdbasd'] 匹配a,或者b都可以。或的关系
[] 字符集 ret = re.findall('[a,*]),'as*') 取消元子符的特殊作用,这里*已经不是元子符了,就是作为*这个字符。这三个字符例外(\ ^ -)
ret = re.findall('[1-9]','asd1231') 1-9的意思
ret = re.findall([^t],'tasdasd') 取反,除t以外的所有字符ret = re.findall([^t,a],'asd') t,a 是一组,这里去除去t 和a 以外的其他字符
\ 正则里最重要的一个:
反斜杠后面跟元子符取出特殊功能
反斜杠后面跟元字符实现特殊功能
\d 匹配任何十进制数 等价于[0-9]
\D 匹配任何非十进制数字符 等价于[^0-9]
\s 匹配任何空白字符 re,findall('\sasa','asd sasa')
\S 匹配任何非空白字符
\w 匹配任何字母数字字符
\W 匹配任何非字母数字字符
\b 匹配一个特殊边界,单词和空格间的位置
####
re.search('sb','saasdsbasassb') search方法只返回匹配的第一个值,后面匹配的就不返回了。
ret = re.search('sb','saasdsbasassb') ret.group() 获取对象的值
()
匹配()里面的内容作为一组,所有的都匹配出来
print(re.search('(as)+','sdjkfasas').group())
| 管道符,匹配或者
##########
re 下面的方法
findall 返回所有匹配只
search 返回一个对象,包含匹配第一个的信息,通过对象的group方法取第一个值
match 只在字符串开头进行匹配,也只返回一个对象,对象也通过调用group方法取值
split re.split('[j,s]','adjkasall') 分割,这个要先用js进行分割,分割完后剩下的内容再使用s进行分割。
re.sub 替换 re.sub('a..x','s..b','asdasdasassxasd') 规则,替换成的内容,被替换的字符串
re.compile 编译一个匹配规则,用于多次调用 obj=re.complie('\.com') obj.findall('asdasd.comasdasd')
python语法_模块_re(正则表达)的更多相关文章
- python语法_模块
方便调用的分组函数文件,一个py模块就是一个模块,模块分三类 python标准库 第三方模块 应程序自定义模块 模块的掉用: 可以把多个功能(函数)包含在一个模块文件里,调用时直接使用import 就 ...
- python语法_模块_os_sys
os模块:提供对此操作系统进行操作的接口 os.getcwd() 获取python运行的工作目录. os.chdir(r'C:\USERs') 修改当前工作目录. os.curdir 返回当前目录 ( ...
- python语法_模块_loggin_hashlib_conifgparser
loggin模块 日志模块,级别从上往下依次增强,debug 和 info 默认不输出信息,只有后三种级别有输出信息 loggin.debug('') loggin.info('') loggin.w ...
- python语法_模块_time_datetime_random
模块:可以被公共调用的. time import time print(time.time()) 时间戳方式显示时间. time.sleep(3) 休眠3秒 time.clock() 计算cpu执行时 ...
- python——re模块(正则表达)
python——re模块(正则表达) 两个比较不错的正则帖子: http://blog.csdn.net/riba2534/article/details/54288552 http://blog.c ...
- Python 进阶_模块 & 包
目录 目录 模块的搜索路径和路径搜索 搜索路径 命名空间和变量作用域的比较 变量名的查找覆盖 导入模块 import 语句 from-import 语句 扩展的 import 语句 as 自动载入模块 ...
- python语法_函数
---恢复内容开始--- 函数: 1 减少重复代码 2 定义一个功能,需要直接调用 3 保持代码一致性 def funcation_name(参数s): 功能代码块0 参数可以为多个,传入时按照前后 ...
- python语法_装饰器
装饰器的知识点储备: 1 作用域 2 高阶函数 3 闭包 内部函数,对外部作用作用域的变量进行了引用,该内部函数就认为是闭包, def outer(): x=10 def inner(): print ...
- python语法_文件操作
牢记“”“能调用方法的一定是对象”“” 文件的操作流程, 1 建立文件(打开文件)open('filename','模式').read() [这一步其实就是创建对象] 2 通过句柄进行操作 3 关闭o ...
随机推荐
- linux中gcc和g++的区别
1.两者都是编译器 2.gcc编译c语言:g++既可以编译c语言,也可以编译c++语言 3.gcc不能自动链接库文件,一般用g++来链接库文件,非要用gcc的话,一般使用gcc -lstdc++命令 ...
- VMware虚拟机配置内网电脑能访问
关键字:内网访问虚拟机.内网访问Linux虚拟机.虚拟机访问外部网络 1.vmware虚拟机网络设置为桥接模式 2.虚拟机配置iP地址,以linux系统为示例. 勾选自动连接,选择手动配置ip,然后配 ...
- 在后台启动Redis
1.下载Redis包,解压到指定位置(这里不再赘述) 2.按“Win +R” 在输入框中输入“cmd” 3.在cmd中打开Redis所在的文件夹,如下图(这是我电脑上的) 4.执行“redis-ser ...
- Nginx下完美解决WordPress的伪静态 (wordpress 迁移后 导致 页面404)
直奔主题 如何设置WordPress在 Nginx下的伪静态 第一步:按照文章名为例,登陆后台按照箭头顺序修改固定连接,点击保存更改 第二步:登陆宝塔面板后台,按照文件路径 找到属于要配置域名的con ...
- Linux 重定向 2>&1 , 1>&2
在 shell 程式中,最常使用的 FD (file descriptor) 大概有三个, 分别是: 0 是一个文件描述符,表示标准输入(stdin)1 是一个文件描述符,表示标准输出(stdout) ...
- numpy的数组常用运算练习
import numpy as np # 一维数组 print('==========# 一维数组===========') A = np.array([1, 2, 3, 4]) print(A) # ...
- js属性对象的propertyIsEnumerable方法
定义 每个对象都有一个propertyIsEnumerable()方法.此方法返回一个布尔值,表明指定的属性是否是可枚举. This method can determine whether the ...
- iOS webview 获取html中的图片地址
//js代码,声明1个数组,对img 进行遍历,采用,分割多个url NSString * getAllImages = @"var str = new Array();" &qu ...
- Django--post提交表单内容
本节目标:①.提交表单内容②.通过客户端提交表单新增一篇文章③.通过Django的forms组件来完成新增一篇文章 =======提交表单内容======== 1.前端html:login.html ...
- 五、OpenStack—nova组件介绍与安装
一.nova介绍 Nova 是 OpenStack 最核心的服务,负责维护和管理云环境的计算资源.OpenStack 作为 IaaS 的云操作系统,虚拟机生命周期管理也就是通过 Nova 来实现的. ...