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. CentOS 安装 MongoDB

    一.安装mongodb 本文介绍的安装方式是以二进制方式离线安装,相当于windows"绿色"安装版本的概念. 下载mongodb: # https://www.mongodb.c ...

  2. kafka丢失和重复消费数据

    Kafka作为当下流行的高并发消息中间件,大量用于数据采集,实时处理等场景,我们在享受他的高并发,高可靠时,还是不得不面对可能存在的问题,最常见的就是丢包,重发问题. 1.丢包问题:消息推送服务,每天 ...

  3. R语言 apply,sapply,lapply,tapply,vapply, mapply的用法

    apply() apply(m,dimcode,f,fargs) m 是一个矩阵. dimcode是维度编号,取1则为对行应用函数,取2则为对列运用函数. f是函数 fargs是f的可选参数集 > ...

  4. [bzoj 4196][NOI 2015]软件包管理器

    大概算是一道模板题吧? 就是细节有点多 罗列一下: 如果习惯从1开始搞树的编号的话,处理输入进来的那个依赖关系在加边的时候两个都要+1,体现在代码就是i要从2枚举到n,然后输入进来的那个数要+1 这道 ...

  5. better-scroll影响vue中radio和checkbox的双向数据绑定

    我的解决办法:radio <input v-model="answer" type="radio" name="answer" val ...

  6. Ubuntu关机时间过长,总是停在logo界面

    有时候我们总能遇到ubuntu关机的时候卡住,无法关机,一查看发现是" a stop job is running..." 然后后面接着一串等待时间. 这时候我们需要修改一下sys ...

  7. Java基础 【Arrays 类的使用】

    package com.zuoyan.sort; import java.util.Arrays; public class ArraysClassDemo { public static void ...

  8. Ubuntu 14.04 上安装 Gurobi

    参考: Installing Gurobi 7 on Linux Ubuntu 14.04 上安装 Gurobi 1.在gurobi上创建一个账户,并登陆: 2.从gurobi optimizer上下 ...

  9. 操作 html 的时候是使用 dom 方法还是字符串拼接?

    比如一个列表里面有很多个 li,要给他们加上数据.但多少个 li 是不确定的,由后台数据确定.这时候,就要动态生成 html 内容了. 那么,这个过程, 是使用 += 方法把标签.数据进行一个个的字符 ...

  10. hihoCoder 1145 幻想乡的日常(树状数组 + 离线处理)

    http://hihocoder.com/problemset/problem/1145?sid=1244164 题意: 幻想乡一共有n处居所,编号从1到n.这些居所被n-1条边连起来,形成了一个树形 ...