Python基础学习 -- 正则表达式

简介: Python基础学习 -- 正则表达式

一、正则表达常用符号

1、“.”:除换行以外的所有字符
2、“[]”:匹配中括号任意个字符
3、“\d”:匹配数字
4、“*”:0次或多次
5、“+”:至少1次
6、“?”:0次或1次
7、“{m}”:固定m次
8、“{m,}”:至少m次
9、“{m,n}”:m到n次
10、“$”:以什么结尾
11、“^”:以什么开头
12、“()”:不匹配前后指定的内容

二、正则应用

findall返回的是一个列表

\d匹配到任意数字就返回

import re
str='asdf23fggerg3435mmk3kmo5324'
a=re.findall('\d',str)
print(a)
运行结果:
['2', '3', '3', '4', '3', '5', '3', '5', '3', '2', '4']

\d+匹配到不是数字就返回

import re
str='asdf23fggerg3435mmk3kmo5324'
a=re.findall('\d+',str)
print(a)
运行结果:
['23', '3435', '3', '5324']

\d*匹配不到返回空,连续匹配到数字

import re
str='asdf23fggerg3435mmk3kmo5324'
a=re.findall('\d*',str)
print(a)
运行结果:
['', '', '', '', '23', '', '', '', '', '', '', '3435', '', '', '', '3', '', '', '', '5324', '']

\d?匹配不到返回空,只匹配一个数字

import re
str='asdf23fggerg3435mmk3kmo5324'
a=re.findall('\d?',str)
print(a)
运行结果:
['', '', '', '', '2', '3', '', '', '', '', '', '', '3', '4', '3', '5', '', '', '', '3', '', '', '', '5', '3', '2', '4', '']

匹配字母g和字母m之间

(.*)和(.*?)的区别就是,带“?”的匹配到一次就结束,不带“?”匹配不到为止才返回

import re
str='asdf23fggerg3435mmk3kmo5324'
a=re.findall('g(.*)m',str)
print(a)
运行结果:
['gerg3435mmk3k']
运行结果:
['gerg3435']

匹配3位或者4位的数值

import re
str='asdf23fgg123erg3435mmk3km987o5324'
a=re.findall('\d{3,4}',str)
print(a)
运行结果:
['123', '3435', '987', '5324']

只匹配列表里面的数据

import re
str='asdf23fgg123erg3435mmk3km987o5324'
a=re.findall('[g,1,3]',str)
print(a)
目录
相关文章
|
3月前
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
121 61
|
3月前
|
机器学习/深度学习 Python
堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能
本文深入探讨了堆叠集成策略的原理、实现方法及Python应用。堆叠通过多层模型组合,先用不同基础模型生成预测,再用元学习器整合这些预测,提升模型性能。文章详细介绍了堆叠的实现步骤,包括数据准备、基础模型训练、新训练集构建及元学习器训练,并讨论了其优缺点。
166 3
|
1天前
|
Python
python pandas学习(一)
该代码段展示了四个主要操作:1) 删除指定列名,如商品id;2) 使用正则表达式模糊匹配并删除列,例如匹配订单商品名称1的列;3) 将毫秒级时间戳转换为带有时区调整的日期时间格式,并增加8小时以适应本地时区;4) 将列表转换为DataFrame后保存为Excel文件,文件路径和名称根据变量拼接而成。
12 3
|
2月前
|
Python 容器
Python学习的自我理解和想法(9)
这是我在B站跟随千锋教育学习Python的第9天,主要学习了赋值、浅拷贝和深拷贝的概念及其底层逻辑。由于开学时间紧张,内容较为简略,但希望能帮助理解这些重要概念。赋值是创建引用,浅拷贝创建新容器但元素仍引用原对象,深拷贝则创建完全独立的新对象。希望对大家有所帮助,欢迎讨论。
|
2月前
|
Python
Python学习的自我理解和想法(10)
这是我在千锋教育B站课程学习Python的第10天笔记,主要学习了函数的相关知识。内容包括函数的定义、组成、命名、参数分类(必须参数、关键字参数、默认参数、不定长参数)及调用注意事项。由于开学时间有限,记录较为简略,望谅解。通过学习,我理解了函数可以封装常用功能,简化代码并便于维护。若有不当之处,欢迎指正。
|
1月前
|
数据可视化 数据挖掘 大数据
1.1 学习Python操作Excel的必要性
学习Python操作Excel在当今数据驱动的商业环境中至关重要。Python能处理大规模数据集,突破Excel行数限制;提供丰富的库实现复杂数据分析和自动化任务,显著提高效率。掌握这项技能不仅能提升个人能力,还能为企业带来价值,减少人为错误,提高决策效率。推荐从基础语法、Excel操作库开始学习,逐步进阶到数据可视化和自动化报表系统。通过实际项目巩固知识,关注新技术,为职业发展奠定坚实基础。
|
2月前
|
存储 索引 Python
Python学习的自我理解和想法(6)
这是我在B站千锋教育学习Python的第6天笔记,主要学习了字典的使用方法,包括字典的基本概念、访问、修改、添加、删除元素,以及获取字典信息、遍历字典和合并字典等内容。开学后时间有限,内容较为简略,敬请谅解。
|
2月前
|
存储 程序员 Python
Python学习的自我理解和想法(2)
今日学习Python第二天,重点掌握字符串操作。内容涵盖字符串介绍、切片、长度统计、子串计数、大小写转换及查找位置等。通过B站黑马程序员课程跟随老师实践,非原创代码,旨在巩固基础知识与技能。
|
2月前
|
程序员 Python
Python学习的自我理解和想法(3)
这是学习Python第三天的内容总结,主要围绕字符串操作展开,包括字符串的提取、分割、合并、替换、判断、编码及格式化输出等,通过B站黑马程序员课程跟随老师实践,非原创代码。
|
2月前
|
Python
Python学习的自我理解和想法(7)
学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码! 今天是学Python的第七天,学的内容是集合。开学了,时间不多,写得不多,见谅。

热门文章

最新文章

推荐镜像

更多