# -*- coding: utf-8 -*-
import re str_0 = 'Aqin1012Heheheaaaaaaahehe如何da' def re_str(re_str_0,str_0):
test=re.match(re_str_0, str_0)
if test:
print("匹配成功~")
print(test.group(0)) # group()函数 提取以()分组的字符串 group(0):整体 group(1):第一个括号匹配部分;以此类推
else:
print("匹配的失败!") # 贪婪模式:从右边(后面)开始匹配
# 非贪婪模式:从左边(前面)开始匹配 ?表示进入非贪婪模式
re_str_1='.*(he).*'
re_str_2='.*?(he).*?'
re_str(re_str_1,str_0)
re_str(re_str_2,str_0) # ^a 表示以a开头的字符串(只匹配一次)
# . 表示任意字符(只匹配一次)
# * 表示前面的字符可以出现任意次(0/多次匹配)
# a$ 表示以a结尾的字符串(只匹配一次) re_str_3 = '^A.*' # 表示以'A'开头的任意字符 # 匹配函数 re.match(匹配的格式,要匹配的字符串) # + 表示前面的字符至少出现一次
# {n} 控制前面字符的出现
# a{2} a出现至少2次
# a{3,4} a出现至少3次最多4次
# a{3,} a出现最少3次
re_str_4 = 'a.{3}a' # 表示a与a之间有三个字符 # | 表示或,无()则对整个字符串起作用
# [] 表示其中任意 [abcd]:a/b/c/d中任意一个 [0-9]:在0-9区间内 [^字符]:非该字符
# \d 表示数字 # \A 进匹配字符串开头
# \Z 进匹配字符串结尾 re_str_5='.*(1[0-9]{10}).*' # 常用实例
# [\u4e00-\u9fa5]:所有汉字(unicode编码)
str_1="呵呵额呵呵qqqq呵呵额呵呵"
re_str_6='[\u4e00-\u9fa5].*'
re_str(re_str_6,str_1) # ^[1-9]\d*$
# 匹配正整数
# ^-[1-9]\d*$
# 匹配符合邮箱
# [\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?
# 匹配网址
# [a-zA-z]+://[^\s]*
# 匹配国内电话号码
# \d{3}-\d{8}|\d{4}-\{7,8}
# 匹配邮政编码
# [1-9]\d{5}(?!\d)
# 匹配身份证号
# ^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$
# 匹配年月日
# ([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8])))

今天莫名其妙地感觉不对,啥都不想说了

python常用的正则表达式,持续更新<<的更多相关文章

  1. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  2. 【github&&git】4、git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  3. Python常用的正则表达式处理函数

    Python常用的正则表达式处理函数 正则表达式是一个特殊的字符序列,用于简洁表达一组字符串特征,检查一个字符串是否与某种模式匹配,使用起来十分方便. 在Python中,我们通过调用re库来使用re模 ...

  4. 总结js常用函数和常用技巧(持续更新)

    学习和工作的过程中总结的干货,包括常用函数.常用js技巧.常用正则表达式.git笔记等.为刚接触前端的童鞋们提供一个简单的查询的途径,也以此来缅怀我的前端学习之路. PS:此文档,我会持续更新. Aj ...

  5. 【笔记】git 的常用操作命令(持续更新。。。)

    项目正在如火如荼的开展,代码量的繁多不得不令我们运用 git 这个有用的工具去管理我们共同协作的代码 git 在这里不作什么介绍了,百度一大堆的教程 首推廖雪峰老师的:http://www.liaox ...

  6. php常用函数(持续更新)

    每一种编程语言在用的过程中都会发现有时候要一种特定需求的功能函数,结果没有内置这样的函数,这个时候就需要自己根据已有函数编写尽可能简单的函数,下面是我在做php相关工作时积累下的函数,会持续更新,您要 ...

  7. [Python] Python学习笔记之常用模块总结[持续更新...]

    作为一种极其简单的编程语言,Python目前成为了最炙手可热的几种语言之一.它不仅简单易学,而且它还为用户提供了各种各样的模块,功能强大,无所不能.有利必有弊,学习Python同样有困扰,其中之一就是 ...

  8. Python Redis常用操作(持续更新)

    目录 1.Redis简介 2.Redis部署 3.Redis API应用 4.String操作 1.Redis简介 redis是业界主流的key-value,nosql数据库之一.和Memcached ...

  9. python 系列文章汇总(持续更新...)

    引言 不知不觉已经写了好几篇 python 相关的随笔了,从刚开始的门外汉到现在已经对 python 有一些入门了,时间也已经过去了一个多月. 写博客真是好处多多,不仅能提供整理自己学习的知识点,梳理 ...

随机推荐

  1. 02.JS数据类型与数据类型转换

    前言:   学习一门编程语言的基本步骤 (01)了解背景知识 (02)搭建开发环境 (03)语法规范 (04)常量和变量 (05)数据类型 (06)数据类型转换5.数据类型——datatype  数据 ...

  2. webpack打包进行丑化压缩遇到(TypeError Cannot read property 'compilation' of undefined)问题

    今天再重新配置老项目node打包环境的时候遇到了一个问题. 在打包的时候报: TypeError: Cannot read property 'compilation' of undefined 错误 ...

  3. Java语言与C++语言区别

    最近有点空闲时间,学习了Java语言.教材<Java简明教程>第四版,清华大学出版社.本人以前有C++基础,所以主要总结下两者区别. 一.基本类型和运算 1.布尔常量,true和false ...

  4. Java模拟客户端向服务器上传文件

    先来了解一下客户端与服务器Tcp通信的基本步骤: 服务器端先启动,然后启动客户端向服务器端发送数据. 服务器端收到客户端发送的数据,服务器端会响应应客户端,向客户端发送响应结果. 客户端读取服务器发送 ...

  5. 网络流最大流——dinic算法

    前言 网络流问题是一个很深奥的问题,对应也有许多很优秀的算法.但是本文只会讲述dinic算法 最近写了好多网络流的题目,想想看还是写一篇来总结一下网络流和dinic算法以免以后自己忘了... 网络流问 ...

  6. 关于Dijk采访的一些感想

    有效的程序员不应该浪费很多时间用于程序调试,他们应该一开始就不要把故障引入! 反复,一遍又一遍的尝试,真的会让人心烦,对于有的问题解决不了,其实有很多原因,写出来的程序其实是非常考验人的细节处理能力的 ...

  7. tensorflow模型的保存与加载

    模型的保存与加载一般有三种模式:save/load weights(最干净.最轻量级的方式,只保存网络参数,不保存网络状态),save/load entire model(最简单粗暴的方式,把网络所有 ...

  8. linux 文件系统管理三部曲之二:创建文件系统

    创建文件系统的含义:就是格式化一个硬盘分区,不同的格式化方式,就是创建了不同的文件系统. 格式化: 低级格式化:划分分区前执行,主要是划分硬盘的磁道等. 高级格式化:划分分区后执行,创建文件系统 创建 ...

  9. Java(三)String类

    一.String类初始化方法 1.初始化一个空字符串 String str=new String();//这里调用了String的无参构造方法 2.初始化一个有值的字符串 String str1=&q ...

  10. 【巨杉数据库SequoiaDB】省级农信国产分布式数据库应用实践

    本文转载自<金融电子化> 原文链接:https://mp.weixin.qq.com/s/WGG91Rv9QTBHPsNVPG8Z5g 随着移动互联网的迅猛发展,分布式架构在互联网IT技术 ...