python 正则式使用心得

yipeiwu_com6年前Python基础

1.match() 从开始位置开始匹配
2.search() 任意位置匹配,如果有多个匹配,只返回第一个
3.finditer() 返回所有匹配
4.每次匹配,都是尽量最大匹配。例如:
>>> m = re.compile('abc[bcd]*b')
>>> m.findall('abcbcbcb')
['abcbcbcb']
其实abcbcb也是匹配的abc[bcd]*b的,不过只返回一个最大的匹配值。
5.split()方法
a.根据正则式划分字符串,可指定最大的划分数
>>> p = re.compile(r'\W+')
>>> p.split('This is a test, short and sweet, of split().')
['This', 'is', 'a', 'test', 'short', 'and', 'sweet', 'of', 'split', '']
b.有时,你不仅对定界符之间的文本感兴趣,也需要知道定界符是什么。
如果捕获括号在 RE 中使用,那么它们的值也会当作列表的一部分返回。比较下面的调用:
>>> p2 = re.compile(r'(\W+)')
['This', '... ', 'is', ' ', 'a', ' ', 'test', '.', '']

相关文章

python中单例常用的几种实现方法总结

前言 最近这两天在看自己之前写的代码,所以正好把用过的东西整理一下,单例模式,在日常的代码工作中也是经常被用到, 所以这里把之前用过的不同方式实现的单例方式整理一下 什么是单例? 确保...

python__name__原理及用法详解

python__name__原理及用法详解

1、python中__name__是什么意思? 很多python的初学者可能都会遇到一个问题:__name__是什么意思? 在刚开始学习python的时候,我们总会看到这样一句代码:...

Centos7 下安装最新的python3.8

Python 3.8是Python语言的最新版本,它适合用于编写脚本、自动化以及机器学习和Web开发等各种任务。现在Python 3.8已经进入官方的beta阶段,这个版本带来了许多语法...

小结Python用fork来创建子进程注意事项

自己随手写了Python下 fork 进程的测试代码(来说明这个问题不一定完全合适): def fork(a): def now(): import datetime re...

Django框架使用内置方法实现登录功能详解

Django框架使用内置方法实现登录功能详解

本文实例讲述了Django框架使用内置方法实现登录功能。分享给大家供大家参考,具体如下: 一 内置登录退出思维导图 二 Django内置登录方法 1 位置...