博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
re模块
阅读量:4911 次
发布时间:2019-06-11

本文共 1698 字,大约阅读时间需要 5 分钟。

1.正则表达式

  (1)正则表达式含义...........一种匹配字符串的规则

                  1来确认一个字符串是否符合规则

                   2从大段的字符串中找到符合规则的内容

  (2)程序领域

    1.登录注册页的表单验证

    2.爬虫

  (3)正则表达式的格式

    元字符 字符组[  ]

      [1bc]表示的是一个范围

      [0-9][A-Z][a-z] 匹配三个字符

      [abc0-9] 匹配一个字符

      [0-9a-zA-Z]匹配一个字符

    \d == [0-9]也表示匹配一个字符,匹配的诗歌数字

    \w ==[0-9][A-Z][a-z]表示匹配一个数字字母下划线

    \s ==[\n  \t]包括回车   空格 和制表符

      \n匹配回车

      \t匹配制表符

    \D匹配非数字

       \W匹配非数字字母下划线

    \S匹配非空白

    [\d\D][\s\S][\w\W]匹配所有

    ^匹配字符串的开始

^海. 海燕海娇海东 海燕 只从开头匹配"海."

    $匹配字符串的结尾

  海.$   海燕海娇海东 海东 只匹配结尾的"海.$"

    a|b匹配字符a或b,大数在前

    ()匹配括号内的表达式,也表示一个组

    ()...............用法()的用法 [1-9]\d{14}(\d{2}[1-9X])? 身份证号

               \d+(\.\d+)?  小数或者整数

    . 匹配除换行符以外的任意字符

2.量词

  ?.........在量词的后面跟一个 ? 取消贪婪匹配  非贪婪(惰性)模式

李.? 李杰和李莲英和李二棍子

李杰

李莲
李二

 
?表示重复零次或一次,即只匹配"李"后面一个任意字符

  + ..........重复一次或更多次

李.+ 李杰和李莲英和李二棍子 李杰和李莲英和李二棍子
+表示重复一次或多次,即只匹配"李"后面1个或多个任意字符

  * ..........重复零次或更多次

李.* 李杰和李莲英和李二棍子 李杰和李莲英和李二棍子
*表示重复零次或多次,即匹配"李"后面0或多个任意字符

  {n}  {m}  {n,m}

3转义符

   

 

  

 

4re模块

  (1)匹配  

    1)findall....................参数  返回值类型:列表,返回值个数:1,返回值内容,所有匹配上的项

        例子:

    2)search.....................返回值类型  正则匹配结果的对象,返回值:1个,匹配上就返回对象.返回的对象通过group来获取匹配到的第一个结果

        例子:

      

    (2)替换   sup

      

    (3)切割   split

      

        split     遇到分组,会保留分组内被切割的内容

    (4)进阶方法

      1)compile   预编译   节省时间  只有在多次使用某一个相同的正则表达式时候这个compile才会帮助我们提高程序的效率

       

        2)finditer

          

  python中的正则表达式

    findall 会优先显示分组中的 内容,要想取消分组优先,(?:正则表达式)用的匹配

      

 

    search 如果search中有分组的话,通过group(n)就能拿到gronp中的匹配内容

      

  

 分组表达式进阶

    分组命名:

      (?P<name>正则表达式)表示给分组起名字

      (?P=name)表示使用这个分组,这里匹配到的内容应该和分组中的内容完全相等

    通过索引使用分组

       \1表示使用第一组,匹配到的内容必须和第一个组中的内容完全相同

 

    

 

 

 

 

 

      

  

    

 

转载于:https://www.cnblogs.com/xiaole-7890/p/9431579.html

你可能感兴趣的文章
win10升级相关
查看>>
LVS负载均衡服务
查看>>
phpadmin dvwa sqli-labs xsser.me
查看>>
OPENCV(2) —— Basic Structures(二)
查看>>
SDUT 3346 数据结构实验之二叉树七:叶子问题
查看>>
正则表达式介绍
查看>>
linux 比较命令
查看>>
软件工程学习心得4
查看>>
车机HMI开发过程中的功能安全方案
查看>>
我要上蓝翔
查看>>
Ping pong(树状数组经典)
查看>>
Mysql 语句优化
查看>>
记一次面试
查看>>
例子:进度条
查看>>
二叉树
查看>>
kubernetes安装记录
查看>>
easyui 回车搜索
查看>>
SAP 使用SQL Trace(ST05)
查看>>
P4777 【模板】扩展中国剩余定理(EXCRT)&& EXCRT
查看>>
[PowerShell]Quote in String
查看>>