python cook 整理
1、字符串分割
单个分隔符 'abc'.split('b') >> ['a','c']
多个分隔符 re.split(r'[b,d]','abcde') >>> ['a','c','e',]
2、 检查字符串开头或结尾
检查一种匹配 'a.txt'.startswith('a') >>> True 'b.txt'.endswith('.txt') >> True
检查多种配 ’a.txt'.startswith(('a','b','c',)) >>> True 'b.txt'.startswith(('a','b','c',)) >> True 'c.txt'.startswith(('a','b','c',))>> True 传入一个元组做参数 ,或的关系
选择范围匹配 ‘abcd'.startswith('a',0,3) 'abcd' 从0到3 为’abc',在匹配开头
3、 使用通配符进行匹配 fnmatch / fnmatchcase / glob
from fnmatch import fnmatch,fnmatchcase
fnmatch('foo.txt','*.txt') >> True 不同系统对大小写区分不同,windows 不敏感,Linux 敏感
fnmatchcase('foo.txt','*.TXT') >> False 在任何系统,都区分大小写
from glob import glob
glob('c:\\*.txt') 可以递归查找到c盘下面所有的.txt 文件
4、使用re 进行字符串的匹配和搜索
import re
re.match() 匹配字符串的开头部分,若匹配成功,则返回 一个match obj
re.search() 匹配字符串的整体,若匹配成功,则返回 一个match obj ,但是只匹配第一个子串
re.findall() 匹配字符串的整体,若匹配成功,则返回一个 子串列表
re.compile() 编译一个正则表达式模式,返回一个 pattern obj
5、字符串替换
‘abc'.replace('a','1') 使用replace 方法
re.sub(r'',r'',str) 使用re.sub() 替换 ,可使用回调函数替换
6、匹配时忽略大小写 flags=re.IGNORECASE
re.findall(r'',str,flags=IGNORECASE)
7、最短匹配 》》想要匹配一对分隔符之间的字符串时,使用最短匹配,防止出错
’ aaaaaaa "no" aaaaaa "yes" ' >>> r'\"(.*?)\"'
.* 遵循贪婪匹配
.*? 遵循最短匹配
8、实现 跨行匹配 使用(?:.|\n)匹配任意字符或\n
9、删除字符串内不需要的字符
.
python cook 整理的更多相关文章
- python django整理(五)配置favicon.ico,解决警告Not Found: /favicon.ico(转载)
版权声明:本文为博主原创文章,欢迎交流分享,未经博主允许不得转载. https://blog.csdn.net/HHTNAN/article/details/78549561 Django 浏览器打开 ...
- python基础整理笔记(五)
一. python中正则表达式的一些查漏补缺 1. 给括号里分组的表达式加上别名:以便之后通过groupdict方法来方便地获取. 2. 将之前取名为"name"的分组所获得的 ...
- python基础整理笔记(四)
一. python 打开文件的方法 1. python中使用open函数打开文件,需要设定的参数包括文件的路径和打开的模式.示例如下: f = open('a.txt', 'r+') 2. f为打开文 ...
- python基础整理笔记(一)
一. 编码 1. 在python2里,加载py文件会对字符进行编码,需要在文件头上的注释里注明编码类型(不加则默认是ascII). # -*- coding: utf-8 -*- print 'hel ...
- Python模块整理(三):子进程模块subprocess
文章 原始出处 http://ipseek.blog.51cto.com/1041109/807513. 本来收集整理网络上相关资料后整理: 从python2.4版本开始,可以用subprocess这 ...
- python基础整理----基本概念和知识
整理一下python的基本概念和知识, 主要用python3为语法标准. python介绍 一种面向对象的解释性计算机设计语言,具有丰富和强大的库. python定位:"优雅".& ...
- python模块整理29-redis模块
date:20140530auth:jinhttp://github.com/andymccurdy/redis-pyhttps://github.com/andymccurdy/redis-py/b ...
- 这几天加班熬夜把所有Python库整理了一遍,非常全面!
库名称简介 Chardet 字符编码探测器,可以自动检测文本.网页.xml的编码.colorama 主要用来给文本添加各种颜色,并且非常简单易用.Prettytable 主要用于在终端或浏览器端构建格 ...
- Python库整理
库名称简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式 ...
随机推荐
- Codeforces 750E New Year and Old Subsequence - 线段树 - 动态规划
A string t is called nice if a string "2017" occurs in t as a subsequence but a string &qu ...
- UML(统一建模语言)是通用的可视化标准建模语言。由构造块、公共机制、构架三部分组成。
UML UML(统一建模语言)是通用的可视化标准建模语言.由构造块.公共机制.构架三部分组成. 1.构造块:包括基本的UML建模元素(类.接口.用例等).关系(关联关系.依赖关系.泛化关系.实现关系) ...
- POJ 3250 Bad Hair Day【单调栈入门】
Bad Hair Day Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 24112 Accepted: 8208 Des ...
- 从0开始安装fedora23的笔记-- 以及使用fedora的常规问题
关于安装过程中的笔记本 触摸板 和鼠标的问题? 在安装过程中, 系统只认从usb接口插入的鼠标和触摸板上的 "左键和右键"按钮. 触摸板上的鼠标只支持"移动"的 ...
- P3380 【模板】二逼平衡树(树套树)
思路 若opt=1 则为操作1,之后有三个数l,r,k 表示查询k在区间[l,r]的排名 若opt=2 则为操作2,之后有三个数l,r,k 表示查询区间[l,r]内排名为k的数 若opt=3 则为操作 ...
- SpringBoot 整合使用dubbo
这里主要是按照teaey作者的spring-boot-starter-dubbo框架进行一些变化的使用 依赖包: <dependency> <groupId>com.aliba ...
- leetcode 04 Median of Two Sorted Arrays
n1 为 num1的 len n2 为 num2的 len 故中间的数应该是 k = (n1 + n2 + 1) / 2 二分 num1中位置 m1 , 故 num2的位置为m2 必须保证 nums1 ...
- jvm:分析工具
bin/jvisualvm.exe 可查看类实例数 bin/jconsole.exe 监控线程,堆,等 http://blog.csdn.net/yaowj2/article/details/7107 ...
- Wijmo 2017路线图
2016年是Wijmo团队发展和增长的另一个富有成效的一年.回顾我们2016年的路线图,您可以看到我们交付了我们承诺的一切.让我们回顾一下2016年的亮点: 我们第一个全面支持Angular 2 互操 ...
- BZOJ 1497: [NOI2006]最大获利(最大权闭合图)
http://www.lydsy.com/JudgeOnline/problem.php?id=1497 题意: 思路: 论文题,只要看过论文的话就是小菜一碟啦~ 每个用户群i作为一个结点分别向相应的 ...