4.9 re
  - re模块vs正则表达式
    
      - 正则表达式 
  独立的一个东西和python是两个系统
- re 
  python的一个模块
 
正则表达式
做字符串匹配的一个规则,在编程界占据很重要的地位,尤其在python,因python擅长爬虫,爬虫需要对大量字符串数据进行处理。
  - 关于等价 
 . [] ^ $四个字符是所有语言都支持的正则表达式,所以这四个是基础的正则表达式。
 正则难理解因为里面有一个等价的概念,这个概念大大增加了理解难度,让很多初学者看起来会懵,如果把等价都恢复成原始写法,自己书写正则就超级简单了,就像说话一样去写你的正则了
通用基础字符
  - 基本用法示例
 [0135] 匹配单个0-3的数字
 [0135][0135][0135] 匹配三个0-3的数字
 [0-9] 匹配单个0-9的数字
 [a-z] 匹配单个小写字母
 [A-Z] 匹配单个大写字母
 [0-9a-zA-Z] 匹配单个数字、小写字母、大写字母
- .  匹配除\r\n之外的任意字符
- []
    
      - [字符组范围]  匹配符合字符组范围的单个字符
- 字符组  同一个位置上可以出现的字符的范围
 
- 
    
      - 放在表达式开头表示匹配字符串的开头
        
      
- 放在字符组内开头表示匹配不符合字符组范围的字符
        
      
 
- $
    
  
元字符
  - \
    
      - 转义符,与后面的字符组成固定、有特殊意义的匹配格式(\\匹配自身)
 
- \w  等价[A-Za-z_0-9]
    
  
- \W  等价[^A-Za-z_0-9]
    
  
- \s  等价[ ]
    
  
- \S  等价[^ ]
    
  
- \d  等价[0-9]
    
  
- \D  等价[^0-9]
    
  
- \n
    
  
- \t
    
  
- \b  等价\s+
    
  
- 
    
    
  
- ()
    
      - 将(  ) 之间的表达式定义为“组”(group),最多9个,它们可以用 \1 到\9 的符号来引用
 
量词
  - {n}
    
  
- {n,m}
    
  
- {n,}
    
  
- *  等价{0, }
    
  
- +  等价{1,}
    
  
- ?	 等价{0,1}
    
  
- 贪婪匹配
    
  
- 非贪婪匹配
    
  
re模块方法