pythonpython杂谈

python:正则表达式_01

2018-05-07  本文已影响0人  小铭灬同学

1.导入模块re

2.正则表达式:记录文本规则的代码

3..匹配字符时 :

 匹配:re.match(pattern,string,flags=0)       获取结果:变量.group( )

 匹配失败:意为变量.group( )获得到的结果为空:

Attribute Error :  'None Type' object has no attribute'group'

4.匹配单个字符:

    .:匹配任意1个字符(除了\n)

    [ ]:匹配[ ]中列举的字符

    \d:匹配数字,即0-9

    \D:匹配非数字

    \s:匹配空白

    \S:匹配非空白

    \w:匹配单词字符(即a-z、A-Z、0-9、_)

    \W:匹配非单词字符

5.匹配多个字符:

    *:匹配前一个字符出现0次或者无限次

    +:匹配前一个字符出现1次或者无限次

    ?:匹配前一个字符出现1次或者0次

    {m}:匹配前一个字符出现m次

    {m,n}:匹配前一个字符出现从m到n次

6.匹配开头和结尾:

    ^:匹配字符串开头

    $:匹配字符串结尾

7.匹配分组:

    |:匹配左右任意一个表达式

    (ab):将括号中字符作为一个分组

    \num:引用分组num匹配到的字符串

    (?P):分组起别名

    (?P=name):引用别名为name分组匹配到的字符串

8.高级应用:

    8.1 search:搜索一次

    8.2 findall:搜索多次

    8.3 sub:替换

    8.4 split:切割

9.r的应用:python中字符串前面加上 r 表示原生字符串

10.python中的贪婪和非贪婪:

    "*","?","+","{m,n}"后面加上?,使贪婪变成非贪婪

    例:.*:使用正则将标签<>替换掉,默认会从头到尾都匹配掉

下一期会进行例子的列举~

上一篇下一篇

猜你喜欢

热点阅读