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、实现 跨行匹配  使用(?:.| )匹配任意字符或

9、删除字符串内不需要的字符

 .

原文地址:https://www.cnblogs.com/charles7987/p/9958967.html