re正则表达四

 

  1、定义:

    用来简洁表达一组字符串的表达式。

    通用的字符串表达框架。

    针对字符串表达简洁和特征思想的工具。

    判断某字符串的特征归属。

  2、作用

    表达文本类型的特征(病毒,入侵等)

    同时查找或替换一组字符串

    匹配字符串的全部或部分。

  3、使用

    编译:将符合正则表达式语法的字符串转换成正则表达式特征。

  4、语法

    正则表达式语法是由字符和操作符构成,下面介绍正则表达式的常用操作符:

    

    

   5、匹配ip地址的正则表达式

    ip地址字符串形式的正则表达式(ip地址分四段,每段0-255)

    

  6、re库的使用

    re库介绍:

      re库是python的标准库,主要用于字符串的匹配。

      调用:import re

    正则表达式的表达类型:

      raw string类型(原生字符串类型)

        re库采用raw string类型表示正则表达式,表示为:r'text'

        例如: r'[1-9]\d{5} 中国邮政编码表达式

        原生字符串是不包括转义字符的字符串

      string类型 更加繁琐(包括转义字符)

  7、re库主要功能函数

      

      1)、re.search(pattern,string,flags=0)

        pattern:正则表达式的字符串或原生字符串表示

        string:带匹配字符串

        flags:正则表达式使用时的控制标记(常用的标记有)

         

import re 
search = re.search(r'[1-9]\d{5}','BIT 10081')
#判断search是否为空
  print(search.group(0)

      2)、re.match(pattern,string,flags=0)

 

        pattern:正则表达式的字符串或原生字符串表示

 

        string:带匹配字符串

 

        flags:正则表达式使用时的控制标记

import re
match = re.match(r'[1-9]\d{5}','10081 BIT')
if match:
    print(match.group(0)

      3)、re.findall(pattern,string,flags=0)

        pattern:正则表达式的字符串或原生字符串表示

         string:带匹配字符串

        flags:正则表达式使用时的控制标记

import re
ls = re.findall(r'[1-9]\d{5}','BIT10081 TSU100084')
print(ls)

      4)、re.split(pattern,string,maxsplit=0,flags=0)

        pattern:正则表达式的字符串或原生字符串表示

         string:带匹配字符串

        maxsplit:最大分割数,剩余部分作为最后一个元素输出

        flags:正则表达式使用时的控制标记   

import re 
print(re.split(r'[1-9]\d{5}','BIT10081 TSU100084'))
#加入最大分割数
print(re.split(r'[1-9]\d{5}','BIT10081 TSU100084',maxsplit=1))

      5)re.finditer(pattern,string,flags=0)

        pattern:正则表达式的字符串或原生字符串表示

         string:带匹配字符串

        flags:正则表达式使用时的控制标记

import re
for m in re.finditer(r'[1-9]\d{5}','BIT10081 TSU100084')
        if m:
            print(m.group(0))

      6)、re.sub(pattern,repl,string,count=0,flags=0)

        pattern:正则表达式的字符串或原生字符串表示

        repl:替换匹配字符串的字符串

         string:带匹配字符串

        count:匹配的最大替换次数

        flags:正则表达式使用时的控制标记

import re
print(re.sub(r'[1-9]\d{5}',':zipcode','BIT10081 TSU100084'))

 

posted on 2019-07-13 20:56  喜欢世界的宇宙  阅读(191)  评论(0)    收藏  举报

导航