简单了解python使用正则表达式
正则【Regular Expression】:正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
正则是用来干啥的:正则就是用来匹配字符串的。
Python中string的几个方法:
find():查找
replace():替换
split():分割
正则与字符串的不同:正则不是完全匹配 string是完全匹配
Python中的 re模块
【方法】
findall('条件','内容');查找所有满足条件的 结果放进列表里
search();返回第一个满足条件的对象 可以跟group()方法一块使用返回结果
match():只在字符串开始匹配,只返回一个对象 和group配合使用返回结果
split():分割字符 split('根据什么跟个 可以有多个条件','内容')
sub():替换 sub('替换什么内容','要替换成什么','内容');
re.compile('规则') :此方法将规则编译成对象 直接可以使用对象调用其他方法来实现匹配 实例
obj=re.compile('\.com')
obj.findall(r'http://www.baodu.com'): 此时后面直接填写内容即可
元字符:(在正则表达式中具有特殊意义的专用字符)
1. . (通配符) 除了换行符(\n) 所有符号都能代指,但是每次只能代指一个符号;
2. ^ 放在开头 只以最开头去匹配 设定开头
3. $ 放在结尾 只以结尾去匹配 findall('h...o$','fadfadfehello')
4. * 重复匹配 重复前面的内容 fadia* 重复a 它会把没有当作0次 也就是当成一个空格 0到无穷大
5.+ 重复匹配 但是最少要有一个 1到无穷大
6.? 最多有一个 最少有0个
7. {} 规定一个范围 比如 a{1,2} 就是最多有两个a 最少有一个a 他是贪婪匹配 默认如果最多条件满足就是取最多
8. [] 字符集,[,,,,,] 或者的意思 比如[a,b] 满足a或者b就行
[a-z] 指定范围 就是只要满足a到z就行 但是它再开头或者结尾就表示一个普通字符[-a,b-]
[]还可以去除特殊意义 (除了^ ,-,\)[^4,5] 取相反 只要不是4和5都匹配
9. | A|B
, A 和 B 可以是任意正则表达式,创建一个正则表达式,匹配 A 或者 B. 任意个正则表达式可以用 '|'
连接
10. \ :反斜杠跟元字符去除特殊功能,反斜杠跟普通字符实现特殊功能
\d:匹配任何十进制数字:[0-9]
\D:任何非数字字符[^0-9]
\s:匹配任何空白字符[\t\n\r\f\v]
\S:匹配任何非空白字符[^\t\n\r\f\v]
\w:匹配任何字母数字字符 [a-zA-Z0-9]
\W:匹配任何非字母数字字符[^a-zA-Z0-9]
\b:匹配一个特殊字符边界,也就是指单词和空格间的位置。
\:去除特殊意义,\\:
11.( ) 分组 将多个字符作为一个整体
12. 正在学习中。
简单了解python使用正则表达式的更多相关文章
- 【Python】正则表达式简单教程
说明:本文主要是根据廖雪峰网站的正则表达式教程学习,并根据需要做了少许修改,此处记录下来以备后续查看. <Python正则表达式纯代码极简教程>链接:https://www.cnblogs ...
- [python] 常用正则表达式爬取网页信息及分析HTML标签总结【转】
[python] 常用正则表达式爬取网页信息及分析HTML标签总结 转http://blog.csdn.net/Eastmount/article/details/51082253 标签: pytho ...
- Python 进阶 - 正则表达式
1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十 ...
- python study - 正则表达式
第 7 章 正则表达式 7.1. 概览 7.2. 个案研究:街道地址 7.3. 个案研究:罗马字母 7.3.1. 校验千位数 7.3.2. 校验百位数 7.4. 使用 {n,m} 语法 7.4.1. ...
- python使用正则表达式文本替换
2D客户端编程从某种意义上来讲就是素材组织,所以,图片素材组织经常需要批量处理,python一定是最佳选择,不管是win/linux/mac都有一个简单的运行环境 举两个应用场景: 如果不是在某个文件 ...
- python的正则表达式 re
python的正则表达式 re 本模块提供了和Perl里的正则表达式类似的功能,不关是正则表达式本身还是被搜索的字符串,都可以是Unicode字符,这点不用担心,python会处理地和Ascii字符一 ...
- python基础——正则表达式
正则表达式 正则表达式为高级的文本模式匹配.抽取.与/或文本形式的搜索和替换功能提供了基础.简单的说,正则表达式是一些由字符和特殊符号组成的字符串,他们描述了模式的重复或者表述多个字符,于是正则表达式 ...
- Python之正则表达式(re模块)
本节内容 re模块介绍 使用re模块的步骤 re模块简单应用示例 关于匹配对象的说明 说说正则表达式字符串前的r前缀 re模块综合应用实例 正则表达式(Regluar Expressions)又称规则 ...
- 【Python】正则表达式纯代码极简教程
<Python3正则表达式>文字版详细教程链接:https://www.cnblogs.com/leejack/p/9189796.html ''' 内容:Python3正则表达式 日期: ...
随机推荐
- [开源]基于Log4Net简单实现KafkaAppender
背景 基于之前基于Log4Net本地日志服务简单实现 实现本地日志服务,但是随着项目开发演进,本地日志服务满足不了需求,譬如在预发布环境或者生产环境,不可能让开发人员登录查看本地日志文件分析. Kaf ...
- IntelliJ IDEA下如何设置JSP模板
今天在学习Spring MVC知识时,发现自己所用的IntelliJ IDEA中自动生成的JSP文件不支持EL表达式的使用,所以就想导入新的JSP模板,方便以后使用.根据旧模板的提示,如下图 找到Se ...
- ThreadPoolExecutor中的submit()方法详细讲解
https://blog.csdn.net/qq_33689414/article/details/72955253
- JavaScript局部变量变量和函数命名提升
之前接触了一些javascript局部变量命名提升的问题但是一直没有总结今天特地好好总结一下 变量提升 一个变量的作用域是程序源代码中定义的这个变量的区域.全局变量拥有全局作用域,在javascrip ...
- ASP.NETMVC 分页
<div class="text-center"> <span style="display:inline-block; position:re ...
- 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile
原因: 由于项目所需jdk版本和你当前使用的jdk版本不一致导致的,因为我项目的pom.xml中定义了java版本为1.8,但是我实际idea中run这个项目却是1.7 解决方案: 更换当前jdk版本 ...
- NPM -- 初探--01
NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题,常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器下载并 ...
- 从0开始的Python学习016异常
简介 当你的程序不能正常运行的时候,Python会在控制台打印一段提醒,告诉你一个错误,这个错误就是异常. 错误 我在控制台写了一段无效的代码,将print()的括号去掉,在执行这条语句的时候,系统提 ...
- winserver-查看登陆日志
Abstract 先要开启登陆审核,在查看登陆日志. 开启审核 运行 secpol.msc 日志查看 windowslog 下的security 管理员成功登陆后的eventid:4776,4648, ...
- NVIDIA-SMI系列命令总结
1 NVIDIA-SMI介绍 nvidia-smi简称NVSMI,提供监控GPU使用情况和更改GPU状态的功能,是一个跨平台工具,它支持所有标准的NVIDIA驱动程序支持的Linux发行版以及从Wi ...