正则和相关知识

我与影子孤独终老i 提交于 2020-02-07 15:27:52
  1. 认识正则
    正则表达式:是由一些字符和特殊符号组成的字符串,用来约束或描述一个有相似特征的字符串的集合。
    功能:
    正则捕获:按照正则表达式的规则从一个字符串
    findall 中找到符合正则表达式格式的字符串
    正则匹配:根据正则表达式的规则判断一个字符
    match 串是否符合该表达式格式

  2. 正则表达式模块
    python中通过re模块来使用正则表达式。
    re模块介绍:
    python中的re模块是内置模块,因此可直接通过import关键字导入,通常我们使用该模块中的match()方法判断一个字符串是否符合正则表达式定义的规则,使用findall()方法从指定字符串中找到符合正则表达式规定的字符串

  3. 正则步骤
    #导入re模块
    import re
    #定义正则表达式
    p = re.compile(正则表达式)
    #通过定义的正则来判断字符串是否匹配该字符串,如果匹配则显示匹配信息,否则显示None
    m= p.match(字符串)
    #通过定义的正则表达式从字符串中查找符合规则的字符串并将它们存放在列表中
    f = p.findall(字符串)
    #从指定字符串中查找符合正则的字符串,返回匹配信息(match对象)或None
    f = p.search(字符串)

4正则中常用方法
(1)compile
作用:用于定义正则表达式
格式:
compile(pattern, flags=0)
参数说明:
参数说明:
pattern:正则表达式
flag:标志位
re.I:忽略大小写
re.M:多行模式,改变’^‘和’$‘的行为
re.S:使元字符.匹配任何字符,包括换行符
re.L:支持本地字符集
re.U:匹配unicode定义的字符属性
re.X:忽略模式中的空格
(2)match()和search()
作用:用于判断字符串中有符合指定正则规则的字符串
格式:
match(pattern, string[, flags=0]))
search(pattern, string[, flags=0]))
match()与search()区别:
match()是从string的开始位置进行匹配,而search()会扫描整个string中进行查找匹配
(3)findall
作用:用于从指定字符串中查找满足正则规则的字符串,并将数据以列表形式存储。
格式:
findall(pattern, string[, flags=0]))
(4)基本元字符
^ : 以后面字符开头
$ : 以前面字符结束
\ : 转义字符
(): 分组 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用
\b : 单词边界 可以是字母/数字/中文等
\B : 非单词边界 , 。 :
\d : 匹配数字字符 [0-9]
\D : 匹配非数字字符
\w : 匹配字母、数字、下划线。等价于’[A-Za-z0-9_]’。
\W : 匹配非字母、数字、下划线。等价于 ‘[^A-Za-z0-9_]’。
\n : 匹配换行符
. : 匹配除换行符(\n、\r)之外的任何单个字符。
\s : 匹配任何空白字符,包括空格、制表符、换页符等等
\S : 匹配任何非空白字符
\r :(回车符)
\t : (制表符)
\f : (换页符)
(5)量词元字符
+ : 匹配前面的子表达式一次或多次。
* : 匹配前面的子表达式零次或多次。
? : 匹配前面的子表达式零次或一次。
{n} : 前面的子表达式匹配n次
{n,} : 前面的子表达式匹配至少n次
{n,m} : 前面的子表达式匹配n——m次
(6) 其一的元字符
x | y : 匹配x或y其中之一

             [xyz]  :    匹配x、y、z其中之一

            [^xyz]  :   匹配不包含xyz任意一个的字符

              [a-z]   :    匹配a-z中其中之一

            [^a-z]   :    匹配不包含a-z中任意一个的字符

5.知识补充
(1)AJAX——异步的Javascripy和XML
特定:在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。
工作原理 :在这里插入图片描述
(2)JSON:javascript Object Notation(javascript对象表示法)
json是存储和交换文本信息的语法,是轻量级的文本数据交换格式,使用哦个javascript语法来描述数据对象。
json语法:
语法规则:
1)数据在名称/值对中。
2)数据由逗号分隔;
3)大括号中保存对象;
4)中括号中保存数组。
json格式:{“名称”:“值”, “名称”:“值”}
python处理json格式数据:
1)模块导入 import json
2)常用方法:
json.dumps():将字典或者列表转换为json格式
json.loads():将json格式转换为字典格式
json.dump():将字典或列表转换为json格式并写入文件中
json.load():将json格式转换为字典

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!