python3-day4(re正则表达式,冒泡)
一、正则表达式常用
1.re.match:只尝试从字符串的查找,后面不作查找。
例子:
import re
text="aabcdefg123123" m=re.match('a',text)
if m:
print(m.group())
else:
print("not match")
#结论只能匹配开头a,其它均无法匹配。
2.re.search:在字符串内查找,只要找到第一个匹配就返回,后面不作查找。
import re
text="aabcdefg123123" m=re.search('123',text)
if m:
print(m.group())
else:
print("not match")
#结论只能匹配123,第二个123不作查找。
3.re.match和re.search区别
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配,找到一个匹配,就返回后面不作查找。
4.re.findall:找到所有要匹配的字符并返回列表格式
import re
text="aabcdefg123123" m=re.search('123',text)
if m:
print(m)
else:
print("not match") 结果:
[123,123]
5.re.split:将匹配到的格式当做分割点对字符串分割成列表
import re
text="tom1cat2dog" m=re.search('[0-9]',text)
if m:
print(m)
else:
print("not match")
结果:
['tom','cat','dog']
6.re.sub:替换匹配到的字符
import re
text="tom1cat2dog" m=re.search('[0-9]','#',text)
if m:
print(m)
else:
print("not match")
结果:
tom#cat#dog
7.re.complie:
可以把正则表达式编译成一个正则表达式对象。可以把那些经常使用的正则表达式编译成正则表达式对象,这样可以提高一定的效率。下面是一个正则表达式对象的一个例子:
import re
text="tom1cat2dog"
regex=re.compile('[0-9]')
m=regex.findall(text)
if m:
print(m)
else:
print("not match")
结果:
['1','2']
8.冒泡算法
#!/usr/bin/env python3 data=[10,4,33,21,54,3,8,11,5,22,2,1,17,13,6]
counter=0
for j in range(1,len(data)):
for i in range(len(data)-1): #j,为优化程序,1.解决out of range,2.解决没有必要循环
if data[i] > data[i+1]:
data[i],data[i+1]=data[i+1],data[i]
counter +=1
counter +=1
print(data)
print("Count:",counter)
python3-day4(re正则表达式,冒泡)的更多相关文章
- Python3 re模块(正则表达式)
一:什么是正则? 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则. (在Python中)它内嵌在Python中,并通过r ...
- Python3 re模块正则表达式中的re.S
在Python的正则表达式中,有一个参数为re.S.它表示"."(不包含外侧双引号,下同)的作用扩展到整个字符串,包括"\n".看如下代码: import re ...
- Python3基础之正则表达式
正则表达式 在线测试工具 http://tool.chinaz.com/regex/ 同一个位置上可以出现的字符的范围. 字符组 : [字符组] 在同一个位置可能出现的各种字符组成了一个字符组,在正则 ...
- python3中的正则表达式
精确匹配: \d: 匹配一个数字 \w: 匹配一个字母或数字 . : 匹配任意一个字符 \s: 匹配一个空格(包括tab等空白符) 匹配变长的字符: * : 匹配任意个 ...
- 第二十一天python3 python的正则表达式re模块学习
python的正则表达式 python使用re模块提供了正则表达式处理的能力: 常量 re.M re.MULTILINE 多行模式 re.S re.DOTALL 单行模式 re.I re.IGNORE ...
- python_冒泡算法
什么是冒泡算法? -- 像鱼吐泡泡一样,每次都是向上冒出一个水泡 如何逻辑整理? -- 先拿第一个值和剩下的值,一一比较,必能找到最大的或者最小的 -- 比较过程中,第一个值小于剩下的某个值,交换位置 ...
- 【Python】正则表达式纯代码极简教程
<Python3正则表达式>文字版详细教程链接:https://www.cnblogs.com/leejack/p/9189796.html ''' 内容:Python3正则表达式 日期: ...
- python 正则表达式笔记
#!usr/bin/env python3 #-*- coding:utf-8 -*- #正则表达式 #在正则表达式中,如果直接给出字符,就是精确匹配.用\d可以匹配一个数字,\w可以匹配一个字母.数 ...
- python之路,正则表达式
python3 正则表达式 前言: (1). 处理文本称为计算机主要工作之一(2)根据文本内容进行固定搜索是文本处理的常见工作(3)为了快速方便的处理上述问题,正则表达式技术诞生,逐渐发展为一个单独技 ...
随机推荐
- centos虚拟机NAT静态IP设置
宿主机为Centos6.3 64位,三台虚拟机为为Centos6.3 64位.虚拟机的网络连接方式为默认的NAT方式.虚拟机默认为DHCP方式动态获取IP.为了在三台虚拟机上搭建hadoop,需要将这 ...
- Zend Studio使用
也许你能够用Dreamweaver.Notepad++或者Editplus这种东西完毕你的系统,但所谓“工欲善其事,必先利其器”,偶觉得 一个给力的IDE对于新手还是非常必要的,而Zend作为PHPe ...
- iOS中block实现的探究
[0. Brief introduction of block] Block是iOS4.0+ 和Mac OS X 10.6+ 引进的对C语言的扩展,用来实现匿名函数的特性. 用维基百科的话来说,Blo ...
- android键盘事件
在main.xml文件中代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...
- TimeSpinner( 时间微调) 组件
本节课重点了解 EasyUI 中 Spinner(微调)组件的使用方法,这个组件依赖于Spinner(微调)组件. 一. 加载方式//class 加载方式<input id="box& ...
- Linux命令之文件与用户权限
1.文件管理 在Linux里,任何软件和I/O设备都被视为文件.Linux中的文件名最大支持256个字符,分别可以用A-Z.a-z.0-9等字符来命名. 和Windows不同,Linux中文件是区分大 ...
- HTML基础总结<文本格式>
HTML 文本格式化标签 标签 描述 <b> 定义粗体文本 <em> 呈现为被强调的文本 <i> 定义斜体字 <small> 定义小号字 <str ...
- protected访问修饰符
子类可以调用, 但实例化的对像不可调用 new object;
- 你好,C++(6)2.3 C++兵器谱
2.3 C++兵器谱 正所谓“工欲善其事,必先利其器”,而要想做好C++程序设计,自然也离不开几件像样的兵器.下面我们就来看看C++兵器谱上有哪些神兵利器值得我们学习掌握.排在兵器谱上首要位置的就是 ...
- HDU 5141
这个题 LIS + 并查集的思想 + 链式前向星 要求找s(i,j)使i j 能有最长的LIS ... 做法是枚举每一个j 即终点 算 起点 的可能 无力吐槽了 bc 的时候写错了一个地方 ...