python 正则式使用心得

yipeiwu_com5年前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使用Qt界面以及逻辑实现方法

python使用Qt界面以及逻辑实现方法

用过Qt的朋友 特别是QtCreator的习惯在界面UI上面对应的CPP中写代码。但是在PyQt中不是这样的。pyQt只是个界面,只会生成界面即UI,就算是一个按钮也需要在python只...

PyCharm2018 安装及破解方法实现步骤

PyCharm2018 安装及破解方法实现步骤

PyCharm就是Python语言开发中一个很受欢迎的IDE,界面类似于visual studio,android studio,集成的功能也很多。 1>. 安装 首先要...

关于pycharm中pip版本10.0无法使用的解决办法

关于pycharm中pip版本10.0无法使用的解决办法

一、背景: 近期在利用 pycharm 安装第三方库时会提示 pip 不是最新版本, 因此对 pip 进行更新,但是生成最新版本之后, pip 中由于缺少 main 函...

python 接口返回的json字符串实例

如下所示: JSON 函数 使用 JSON 函数需要导入 json 库:import json。 函数 描述 json.dumps 将 Python 对象编码成 JSON 字符串...

pandas中read_csv的缺失值处理方式

今天遇到的问题是,要将一份csv数据读入dataframe,但某些列中含有NA值。对于这些列来说,NA应该作为一个有意义的level,而不是缺失值,但read_csv函数会自动将类似的缺...