zoukankan      html  css  js  c++  java
  • Python-正则表达式

    import re
    
    #匹配通用字符
    #w 任意字母/数字/下划线
    #W 和小写w相反
    #d 十进制数字
    #D 除了十进制数以外的值
    #s 空白字符
    #S 非空白字符
    
    #匹配数字.英文.中文
    #数字[0-9]
    #英文[a-z][A-Z]
    #中文[u4e00-u9fa5]
    
    #元字符
    # . 匹配任意字符 
    除外
    # ^ 匹配字符串开始位置
    # $ 匹配字符串中结束的位置
    # * 重复o,1,n次前面的原子
    # ? 重复0,1次前面的原子
    # + 重复1,n次前面的原子
    
    #匹配固定次数
    #{n}以前的原子出现n次
    #{n,}至少出现n次
    #{n,m}出现次数介于n-m之间
    
    
    #多个表达式 |  连接2个正则表达式或用算
    
    #strr="15011143537"
    #strs="023-110120"
    #pat=re.compile(r"^1d{10}$|^d{3}-d{6}$",re.I)
    #print(pat.findall(strs))
    
    
    #分组
    
    #strr="111<div>test1</div>222<div>test2</div>333"
    #pat=re.compile(r"<div>(.*?)</div>",re.I)
    #print(pat.findall(strr))
    
    
    
    #贪婪模式和非贪婪模式
    #贪婪模式:在整个表达式匹配的前提下,尽可能多的匹配
    #非贪婪模式:在整个表达式匹配的前提下,尽可能少的匹配?
    #python默认是贪婪模式
    
    
    #compile()  --将正则表达式转换为内部格式,提高执行效率
    #match和search函数
    #match--匹配开头
    #search--匹配任意位置
    #都只匹配一次
    
    #strr="111<div>test1</div>222<div>test2</div>333"
    #pat=re.compile(r"<div>(.*?)</div>",re.I)
    ##加上问号不贪婪,这结果为['test1', 'test2']不加贪婪模式为['test1</div>222<div>test2']
    #print(pat.findall(strr))
    
    
    #findall()   查找所有匹配的内容,装到列表中
    #finditer()   查找所有匹配的内容,装到迭代器中
    
    
    #str="aaa-----jinwei------------jinwei---bbbb"
    #pat=re.compile(r"jinwei",re.I)
    #print(pat.findall(str))
    
    
    #str="aaa-----jinwei------------jinwei---bbbb"
    #pat=re.compile(r"jinwei",re.I)
    #data=pat.finditer(str)
    
    #for i in data:
    #    print(i.group())
    
    
    
    #split()   按照能匹配的子字符串分割后返回列表
    #sub()     用于替换
    
    #strr="jinwei1,,,jinwei2,,,jinwei3,,,"
    
    #pat=re.compile(r",,,",re.I)
    #print(pat.split(strr))
    
    #strr="jinwei1,,,jinwei2,,,,,,jinwei3,,,"
    #pat=re.compile(r",,,",re.I)
    #print(pat.sub("---",strr))
  • 相关阅读:
    MapReduce程序遇见java.net.UnknownHostException
    吐槽下《Hadoop权威指南(第二版)》的翻译
    HFileOutputFormat与TotalOrderPartitioner
    关于hive multi group by的疑惑
    Hive解决 java.io.IOException:SerDeException:LazySimpleSerDe
    一个字符编码引发的血案
    CSS颜色代码大全
    C#中ParameterizedThreadStart和ThreadStart区别
    Sql Server REPLACE函数的使用
    QueryString的用法
  • 原文地址:https://www.cnblogs.com/JinweiChang/p/11821286.html
Copyright © 2011-2022 走看看