【python】正则表达式相关
2024-08-26 07:23:59
注意:Python3.X 的print要有括号, Python 2.x的不需要
放上学习时写的例子:
import re m = re.match(r'(\w+) (\w+)(?P<sign>.*)', 'hello world!') print("m.string:", m.string)
print("m.re:", m.re)
print("m.pos:", m.pos)
print("m.endpos:", m.endpos)
print("m.lastindex:", m.lastindex)
print("m.lastgroup:", m.lastgroup) print("m.group():", m.group())
print("m.group(1,2):", m.group(1,2)) print("m.groups():", m.groups())
print("m.groupdict():", m.groupdict()) print("m.start(2):", m.start(2)) print("m.span(2):", m.span(2)) print(r"m.expand(r'\g \g\g'):", m.expand(r'\2 \1\3')) #search 不一定从第0位开始匹配 pattern = re.compile(r'world') match = re.search(pattern, 'hello world!')
if match:
print(match.group()) #split 已pattern分割字符串
pattern = re.compile(r'\d+')
print(re.split(pattern, 'one1two2three33four4')) #findall 以列表形式返回全部能匹配的子串 pattern = re.compile(r'\d+')
print(re.findall(pattern, 'one1two2three33four4')) #finditer 返回一个顺序访问每一个匹配结果的迭代器
pattern = re.compile(r'\d+') for m in re.finditer(pattern, 'one1two2three3four4'):
print(m.group()) #替换
pattern = re.compile(r'(\w+) (\w+)')
s = 'i say, hello world!' print(re.sub(pattern, r'\2 \1', s)) def func(m):
return m.group(1).title() + ' ' + m.group(2).title() print(re.sub(pattern, func, s)) #subn 比替换多返回了一个替换次数 print(re.subn(pattern, func, s))
最新文章
- C# 本质论 第三章 操作符和控制流
- sqlplus 设置
- jquery导航二级栏目下拉
- 离线树状数组 hihocoder 1391 Countries
- C# 之 将string数组转换到int数组并获取最大最小值
- c语言中3n+1溢出问题解决
- ZOJ 3622 Magic Number(数)
- Windows Azure 安全最佳实践 - 第 1 部分:深度解析挑战防御对策
- Android布局管理详解(1)—— LinearLayout 线性布局
- [SCOI2010]传送带
- Eclipse搭建Android环境失败的解决方案
- 1. Scala概述
- 为什么PPIO要设计支付代理节点?
- OvO
- jdk环境变量配置注意事项
- Java全栈程序员之07:IDEA中使用MAVEN构架生产级的Web项目
- 修复PLSQL Developer 与 Office 2010的集成导出Excel 功能
- js 调用 手机 相机摄像机麦克风
- 深入理解python里面类的对象的赋值
- AI单挑Dota 2世界冠军:被电脑虐哭……