正交表达式

‘‘‘匹配原则,匹配的数据只能够接受字符串‘‘‘import rem=re.match(‘abc‘,‘abcdfe‘)print(m.group())o=re.match(‘[0-9][0-9]‘,‘567ab123c5‘)#[0-9]只代表一个数字,这样子代表匹配两个数字p=re.match(‘[0-9]{0,2}‘,‘3456ablc123d‘)#匹配【0-9】2位,一数字开头的,后面的不会被匹配,从头找,匹配到就返回i=re.match(‘[0-9]{10}‘,‘1234abc‘) #匹配10位,这样会匹配失败a=re.findall(‘[0-9]‘,‘a1d3f3d1a3d4f‘)b=re.findall(‘[0-9]{0,8}‘,‘a1d344444444444f3ggfgfgdfdfdd1a3d4f‘)#后面的表示{}表示匹配多少位,如果是8,表示匹配8位,表示0位到8位的数据都满足要求c=re.findall(‘[0-9]{8}‘,‘a1d344444444444f3ggfgfgdfdfdd1a3d4f‘)#要求必须是8位d=re.findall(‘.*‘,‘a1d344444444444f3ggfgfgdfdfdd1a3d4f‘)f=re.findall(‘.‘,‘‘‘a1d344444444444f3ggfgfgdfdfdd1a3d4f                    sdfdsdfdfdfdsf‘‘‘)#p匹配单行所有print(o)f=re.findall(‘ab*‘,"""a1d344444444444f3ggfgfgdfdfdd1a3d4f                    sdfdsdfdfdfbdsf""")#匹配多行,必须是以a开头,可以是a#可以是abG=re.findall(‘ab+‘,‘‘‘a1d344444444444f3ggfgfgdfdfdd1a3d4f                    sdfdsdfdfdfdsf‘‘‘)#匹配ab必须连在一起,匹配多个i=re.findall(‘ab+‘,‘‘‘ab1d34444444444ab4f3ggfgfgdfdfdd1a3d4f                    sdfdsdfdafdfdabcsf‘‘‘)#匹配ab必须连在一起,匹配多个H=re.findall(‘\S‘,‘‘‘a1d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$fdsf‘‘‘)j=re.findall(‘~‘,‘‘‘a1d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$fdsf‘‘‘)

k=re.search(‘\d+‘,‘‘‘a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$46.5fdsf‘‘‘)l=re.sub(‘\d‘,‘G‘,‘‘‘a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$46.5fdsf‘‘‘)#会把所有的数字替换成大写的Gm=re.sub(‘\d‘,‘G‘,‘‘‘a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$46.5fdsf‘‘‘,count=2)# 找到前两个进行替换Q=re.sub(‘^\d‘,‘G‘,‘‘‘a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$46.5fdsf‘‘‘,count=2)# 找到一数字开头,这次会失败n=re.search(‘^\d‘,‘‘‘3a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$46.5fdsf‘‘‘)# 找到一数字开头,这次会成功N=re.search(‘^\d+$‘,‘‘‘a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f                    [email protected]#$46.5fdsf‘‘‘)# 找到一数字开头,以数字结尾print(o)print(‘ogoup‘,o.group())print(p)print(p.group())print(i)print(a)print(‘c‘,c)print(‘b‘,b)print(d)print(f)print(‘g‘,G)print(‘s‘,H)print(‘i‘,i)print(‘j‘,j)print(‘k‘,k)print(‘l‘,l)print(‘m‘,m)print(‘o‘,Q)print(‘n‘,n)print(‘N‘,N)

结果:

C:\Python34\python.exe "C:/Users/Admin/PycharmProjects/untitled1/第5 天/正交表达式.py"
abc
<_sre.SRE_Match object; span=(0, 2), match=‘56‘>
<_sre.SRE_Match object; span=(0, 2), match=‘56‘>
ogoup 56
<_sre.SRE_Match object; span=(0, 2), match=‘34‘>
34
[‘ab‘, ‘ab‘, ‘ab‘]
[‘1‘, ‘3‘, ‘3‘, ‘1‘, ‘3‘, ‘4‘]
c [‘34444444‘]
b [‘‘, ‘1‘, ‘‘, ‘34444444‘, ‘4444‘, ‘‘, ‘3‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘‘, ‘1‘, ‘‘, ‘3‘, ‘‘, ‘4‘, ‘‘, ‘‘]
[‘a1d344444444444f3ggfgfgdfdfdd1a3d4f‘, ‘‘]
[‘a‘, ‘a‘]
g []
s [‘a‘, ‘1‘, ‘d‘, ‘3‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘4‘, ‘~‘, ‘!‘, ‘4‘, ‘f‘, ‘3‘, ‘g‘, ‘g‘, ‘f‘, ‘g‘, ‘f‘, ‘g‘, ‘d‘, ‘#‘, ‘#‘, ‘f‘, ‘d‘, ‘f‘, ‘d‘, ‘d‘, ‘1‘, ‘a‘, ‘3‘, ‘d‘, ‘4‘, ‘f‘, ‘s‘, ‘d‘, ‘f‘, ‘d‘, ‘s‘, ‘d‘, ‘f‘, ‘d‘, ‘f‘, ‘d‘, ‘f‘, ‘d‘, ‘f‘, ‘@‘, ‘#‘, ‘$‘, ‘f‘, ‘d‘, ‘s‘, ‘f‘]
i [‘ab‘, ‘ab‘, ‘ab‘]
j [‘~‘]
k <_sre.SRE_Match object; span=(1, 3), match=‘34‘>
l aGGdGGGGGGGGGGG~!GfGggfgfgd## fdfddGaGdGf
[email protected]#$GG.Gfdsf
m aGGd34444444444~!4f3ggfgfgd## fdfdd1a3d4f
[email protected]#$46.5fdsf
o a34d34444444444~!4f3ggfgfgd## fdfdd1a3d4f
[email protected]#$46.5fdsf
n <_sre.SRE_Match object; span=(0, 1), match=‘3‘>
N None

Process finished with exit code 0

时间: 2024-08-01 00:54:39

正交表达式的相关文章

傅立叶变换的实质-正交之美

引: 最近在搞一个音频解码器,将随意录制好的声音按照不同的频率分离出不同的音频流,然后推到不同的音箱中,如果再考虑一下音场的谐性,那就是一个N.1声道的解码系统了.我只是想在女儿(或者儿子)出生之前为她做点事情,以便能最终做出个东西送给她(或者他). 在实践的过程中,遇到了傅里叶变换,作文以记之.最终我会导出一个很常用的变换-傅里叶变换 参考: 码分多址(CDMA)的本质-正交之美 信号: 信号是一个很广义的概念,它可以是一种波,也可以是一个阵列,它还可以是一个函数,它甚至是整个世界,总之只要能

.NET深入解析LINQ框架(六:LINQ执行表达式)

阅读目录: 1.LINQ执行表达式 在看本篇文章之前我假设您已经具备我之前分析的一些原理知识,因为这章所要讲的内容是建立在之前的一系列知识点之上的,为了保证您的阅读顺利建议您先阅读本人的LINQ系列文章的前几篇或者您已经具备比较深入的LINQ原理知识体系,防止耽误您的宝贵时间. 到目前为止我们对LINQ的执行原理已经很清楚了,从它的前期构想到它真正为我们所用都有足够的证据,但是似乎问题并没有我们想的那么简单,问题总是在我们使用中频频出现尤其是新技术的使用,当然有问题才能有进步. 一:LINQ执行

Lambda表达式实战视频教程

视频教程地址: https://my.oschina.net/u/3217554/blog/1507456 1:Lambda表达式及函数式接口介绍 2:Lambda表达式详解 3:方法的引用(一) 4:方法的引用(二) 5:Stream API(一) 6:Stream API(二) 7:Lambda表达式.方法的引用.Stream API实战

lambda表达式封装对数据库的查询

前言: 1.为什么要封装lambda表达式数据库查询,原因有一下几点: 1.1.在以往的开发中进行数据库表查询时,其实所需要的字段就是其中几个,但是在开发中,开发者往往习惯select * 进行查询,当数据多和用户量多时,查询的效率会降低. 1.2.在写查询where条件的时候,总是用string.format去拼接字符串,开发效率低. 1.3.代码不够优雅,代码中嵌套和多sql语句,如果是表字段发生改变时编译器检查不出来,代码出错的概率大. 1.4.本着 write less  do more

坑爹的EL 表达式。

先说结论: Property 'OrgName0' not found on type EL表达式只与相关类的get方法的有关,就算你没定义变量,get 方法直接返回一个变量,或者常量都可以.这条没问题. EL表达式的大小写规则:当get方法后的字符如果前两个都是大写时,EL表达式需要大写.除此之外均为小写. package com.dobs.codedeploy.domain; public class Image { private String imageName;private Stri

Spring AOP中pointcut expression表达式解析 及匹配多个条件

Pointcut 是指那些方法需要被执行"AOP",是由"Pointcut Expression"来描述的. Pointcut可以有下列方式来定义或者通过&& || 和!的方式进行组合. args() @args() execution() this() target() @target() within() @within() @annotation 其中 execution 是用的最多的,其格式为: execution(modifiers-pat

Lambda表达式

import org.junit.Test; import java.util.Comparator; import java.util.function.Consumer; /** * 一.Lambda 表达式基础语法:Java8中引入一个新的操作符"->"该操作符称为箭头操作符或Lambda操作符 * 箭头操作符将Lambda表达式拆分为两部分: * 左侧: Lambda表达式的参数列表 * 右侧: Lambda表达式中所需要执行的功能,即Lambda体 * * 语法格式一:

算法训练 表达式计算

问题描述 输入一个只包含加减乖除和括号的合法表达式,求表达式的值.其中除表示整除. 输入格式 输入一行,包含一个表达式. 输出格式 输出这个表达式的值. 样例输入 1-2+3*(4-5) 样例输出 -4 数据规模和约定 表达式长度不超过100,表达式运算合法且运算过程都在int内进行. import java.text.DecimalFormat; import java.text.NumberFormat; import java.util.ArrayList; import java.uti

JAVAWEB开发之Session的追踪创建和销毁、JSP详解(指令,标签,内置对象,动作即转发和包含)、JavaBean及内省技术以及EL表达式获取内容的使用

Session的追踪技术 已知Session是利用cookie机制的服务器端技术,当客户端第一次访问资源时 如果调用request.getSession() 就会在服务器端创建一个由浏览器独享的session空间,并分配一个唯一且名称为JSESSIONID的cookie发送到浏览器端,如果浏览器没有禁用cookie的话,当浏览器再次访问项目中的Servlet程序时会将JSESSIONID带着,这时JSESSIONID就像唯一的一把钥匙  开启服务器端对应的session空间,进而获取到sessi