zoukankan      html  css  js  c++  java
  • 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、删除字符串内不需要的字符

     .

  • 相关阅读:
    邻项交换排序
    [POJ 2559]Largest Rectangle in a Histogram 单调栈
    最大子序和 单调队列
    单调栈 总结
    计算中缀表达式
    [HYSBZ 2457] 双端队列
    数组的宽度 单调栈
    SVM从入门到精通
    CVPR2018_RotationNet: Joint Object Categorization and Pose Estimation Using Multiviews from Unsupervised Viewpoints
    比特币以及区块链入门
  • 原文地址:https://www.cnblogs.com/charles7987/p/9958967.html
Copyright © 2011-2022 走看看