Python re模块前的正则表达式常用语法小总结
一、正则表达式:
(1).正则表达式是干什么的
正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
(2). 正则表达式的的语法
1.字符
1. \d 相当于[0-9] 匹配所有数字
正则表达式:\d
要匹配的字符:sjdksajdksj
2. \w 相当于[A-Za-z_] 匹配所有字符
正则表达式:\w
要匹配的字符:%sjd k4 64sajdksj21_ @
3. \s 匹配空格、换行符(\n)、制表符(\t)
4. \b 边界符
正则表达式: ing\b
要匹配的字符: thing taking tingouing (匹配有边界的,没有边界的是不会匹配)
5. \B 非边界
6. \D 是\d 取反 匹配除数字以外的所有字符
正则表达式:\D
要匹配的字符:1545@%6siudaijs sa@
7. \W 是\w 取反
正则表达式:\W
要匹配的字符:1545@%6siudaijs sa@
. \S 是\s 取反
正则表达式:\S
要匹配的字符:1545@%6siudaijs sa@ 
2. 量词
* 取*前面一个字符的零次或多次
+ 取+前面一个字符的一次或多次
?取?前面一个字符的零次或一次 (可以取消正则表达式的贪婪)
. 取所有的字符包括空格、制表、换行
^ 表示从头开始取
正则表达式:^\d*
要匹配的字符:123465sdjhaijeo 454sds21d2s1d5s4
$ 表示一个字符的结尾
正则表达式:\d*$
要匹配的字符:123465sdjhaijeo 454sds21d2s1d5s
| 表示 或可以取两边谁满足的字符串 (如果 | 两边的表达式,后面的包含前面的内容但是还加了其他内容时,要放在前面,不然就匹配不到后面的表达式)
正则表达式:\d+\.\d+|\d* (匹配小数或者整数) 如果 | 两边的表达式调换则不能匹配到小数 \d*|\d+\.\d+
要匹配的字符:sdjhasdsdsdssdjha.ijeo sdsdsds
{n} 匹配前面字符n次
正则表达式:\d{3}
要匹配的字符:sdjha2.3ijeo sds21d2s1d5s
{n,} 匹配前面字符至少n次
正则表达式:\d{3,}
要匹配的字符:sdjha2.3ijeo sds21d2s1d5s445
{n, m} 匹配前面字符n次到m次 (n次到m次之间的都可以)
正则表达式:\d{2,4}
要匹配的字符:sdjha2.3ijeo sdsd2s1d5s445
()可以把多个字符分在一组
正则表达式:\w+@[0-9A-Za-z]+\.([0-9A-Za-z]*\.)*com 里面还有很多东西没有处理(这里只是想说一下()的作用)
要匹配的字符:1235456@qq.com | 1235456@qq.12356.com 都可以匹配
[] 表示一个字符组
其中 基本量词里面的都有特殊的含义,想要表达他们就要用到转义符 \ 把他们转回原来的比如 \$ 就是匹配 $
一般 * . + ? 都具有贪婪性可以加?取消他们的贪婪性
令附:正则表达式查询的网址:http://tool.chinaz.com/regex
Python re模块前的正则表达式常用语法小总结的更多相关文章
- python正则表达式模块re:正则表达式常用字符、常用可选标志位、group与groups、match、search、sub、split,findall、compile、特殊字符转义
本文内容: 正则表达式常用字符. 常用可选标志位. group与groups. match. search. sub. split findall. compile 特殊字符转义 一些现实例子 首发时 ...
- python re 模块和基础正则表达式
1.迭代器:对象在其内部实现了iter(),__iter__()方法,可以用next方法实现自我遍历. 二.python正则表达式 1.python通过re模块支持正则表达式 2.查看当前系统有哪些p ...
- python开发模块基础:正则表达式
一,正则表达式 1.字符组:[0-9][a-z][A-Z] 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示字符分为很多类,比如数字.字母.标点等等.假如你现在要求一个位置&q ...
- python 基础 8.0 regex 正则表达式--常用的正则表达式
一. python 中常用的正则表达式 二. 正则表达式的网站,可以进行在线正则匹配 https://regex101.com/ 1. 使用方法及正则介绍 1> ‘.’ 匹 ...
- Python引用模块和查找模块路径
模块间相互独立相互引用是任何一种编程语言的基础能力.对于"模块"这个词在各种编程语言中或许是不同的,但我们可以简单认为一个程序文件是一个模块,文件里包含了类或者方法的定义.对于编译 ...
- Python::re 模块 -- 在Python中使用正则表达式
前言 这篇文章,并不是对正则表达式的介绍,而是对Python中如何结合re模块使用正则表达式的介绍.文章的侧重点是如何使用re模块在Python语言中使用正则表达式,对于Python表达式的语法和详细 ...
- python【第五篇】常用模块学习
一.主要内容 模块介绍 time &datetime模块 random os sys shutil json & pickle shelve xml处理 yaml处理 configpa ...
- python全栈开发之正则表达式和python的re模块
正则表达式和python的re模块 python全栈开发,正则表达式,re模块 一 正则表达式 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的 ...
- [PyTorch]PyTorch/python常用语法/常见坑点
目录 1. make_grid() 2. join与os.path.join() 3. 读文件写文件 4. json操作 5. tensorboard使用 6. python shutil.move ...
随机推荐
- Java初级黄金体验 其二
Java初级黄金体验 其二 引言:让我们看一下你的C盘有多少个文件和文件夹 初级 Java IO : 第一个纪念碑 小程序大致功能 让我们看一下E盘有多少个文件 上代码 最近太多的作业 代码可以无限改 ...
- adb-andorid记录当前手机的日志当前显示的app进程及activity,
adb logcat -v time> /home/sumsang.log adb shell dumpsys window | grep mCurrentFocus
- 【转】Android检查手机是否被root
目前来说Android平台并没有提供能够root检查的工具.但是我们可以通过两种方式来判断 手机里面是否有su文件 这个su文件是不是能够执行 但是这两种检查方式都存在缺点. 第一种存在误测和漏测的情 ...
- 【Json】Json分词器
package com.hy; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileNo ...
- Android studio -SVN 使用笔记
1.Android studio 安装 中文组官网:http://www.android-studio.org/ 常见问题参考: 分支冲突合并 http://blog.csdn.net/tearsmo ...
- Java基础 case穿透 多个case执行同一段代码
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...
- jenkins发布程序触发shell调用python脚本刷新akamai cdn api
刷新cdn的流程:jenkins获取git中的代码,触发脚本推送到生产环境中(即cdn的源站) --> 触发脚本获取git工作目录的更新列表,将更新列表拼凑成带域名信息的url,写入到目录中 - ...
- centos7.6_x86_64使用Squid搭建代理服务器让windows上网
centos7.6_x86_64使用Squid搭建代理服务器让windows上网 windows机器很多站点访问受限,可以在没有限制外网的机器上面搭建代理服务器,其它电脑可以配置代理通过这台不受限制的 ...
- python import注意事项
# 基本概念 ## 模块&包简介 模块:所谓模块就是一个.py文件,用来存放变量,方法的文件,便于在其他python文件中导入(通过import或from).包(package): 包是更大的 ...
- Qt bug
1.Qt5.2.1不支持QQuickwidget来承载qml 2.Qt5.12以及以上,不支持跨线程调用数据库连接 3.线程A不断产生sql语句,需要让两个数据库分别执行这个sql语句.所以在线程A中 ...