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 整理的更多相关文章

  1. python django整理(五)配置favicon.ico,解决警告Not Found: /favicon.ico(转载)

    版权声明:本文为博主原创文章,欢迎交流分享,未经博主允许不得转载. https://blog.csdn.net/HHTNAN/article/details/78549561 Django 浏览器打开 ...

  2. python基础整理笔记(五)

    一. python中正则表达式的一些查漏补缺 1.  给括号里分组的表达式加上别名:以便之后通过groupdict方法来方便地获取. 2.  将之前取名为"name"的分组所获得的 ...

  3. python基础整理笔记(四)

    一. python 打开文件的方法 1. python中使用open函数打开文件,需要设定的参数包括文件的路径和打开的模式.示例如下: f = open('a.txt', 'r+') 2. f为打开文 ...

  4. python基础整理笔记(一)

    一. 编码 1. 在python2里,加载py文件会对字符进行编码,需要在文件头上的注释里注明编码类型(不加则默认是ascII). # -*- coding: utf-8 -*- print 'hel ...

  5. Python模块整理(三):子进程模块subprocess

    文章 原始出处 http://ipseek.blog.51cto.com/1041109/807513. 本来收集整理网络上相关资料后整理: 从python2.4版本开始,可以用subprocess这 ...

  6. python基础整理----基本概念和知识

    整理一下python的基本概念和知识, 主要用python3为语法标准. python介绍 一种面向对象的解释性计算机设计语言,具有丰富和强大的库. python定位:"优雅".& ...

  7. python模块整理29-redis模块

    date:20140530auth:jinhttp://github.com/andymccurdy/redis-pyhttps://github.com/andymccurdy/redis-py/b ...

  8. 这几天加班熬夜把所有Python库整理了一遍,非常全面!

    库名称简介 Chardet 字符编码探测器,可以自动检测文本.网页.xml的编码.colorama 主要用来给文本添加各种颜色,并且非常简单易用.Prettytable 主要用于在终端或浏览器端构建格 ...

  9. Python库整理

    库名称简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式 ...

随机推荐

  1. 20145320周岐浩 web安全基础实践

    20145320周岐浩 web安全基础实践 一.实验后回答问题 (1)SQL注入攻击原理,如何防御 一.SQL注入攻击原理 SQL注入攻击值得是通过构建特殊的输入作为参数传入web应用程序,而这些输入 ...

  2. java利用poi解析excel文件

    首先需要引入以下jar包 如果使用maven,需要添加两个依赖 <dependencies> <dependency> <groupId>org.apache.po ...

  3. xlrd、xlwt 操作excel表格详解

    转自:https://www.cnblogs.com/jiablogs/p/9141414.html python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是 ...

  4. topcoder srm 535 div1

    problem1 link 对于每个质因子$p$,枚举其出现的最少次数以及最多次数分别在哪个数字中. problem2 link 分数规划.题目是求$\frac{3600K+\sum_{i=0}^{K ...

  5. was清除项目缓存数据

    步骤 彻底清理删除后的项目缓存 删除${WAS_HOME}\AppServer\profiles\AppSrv01\config\cells\xxxxxNode01Cell/applications/ ...

  6. 二进制枚举例题|poj1222,poj3279,poj1753

    poj1222,poj3279,poj1753 听说还有 POJ1681-画家问题 POJ1166-拨钟问题 POJ1054-讨厌的青蛙

  7. 【做题】arc068_f-Solitaire——糊结论

    把所有数字放入双端队列后,结果大概是这样一个排列: \[P_1 1 P_2\] 其中\(P_1\)是递减序列,\(P_2\)是递增序列. 我们以\(1\)所在的位置\(k\)分割最终的排列\(A\). ...

  8. What are the differences between Flyweight and Object Pool patterns?

    What are the differences between Flyweight and Object Pool patterns? They differ in the way they are ...

  9. wamp phpcms部署网站问题

    服务器使用自己的服务器,域名申请后通过信息服务iis管理器建网站,并将物理地址指定到wamp的www目录中的网站的根目录.这时候如果网站首页已经生成后访问域名将进入网站首页. 出现的问题: 1.导航( ...

  10. SAP固定资产业务场景及方案

    SAP固定资产业务场景及方案 http://mp.weixin.qq.com/s/hYlaNHJMQBTZpyFAmP2h3A 对于FICO应用资深专家或顾问,须业务场景及需求成竹在胸:对于非财务顾问 ...