管理经验积累

20170610 日报

2017-06-13  本文已影响5人  喵喵喵喵苗啊

早上在家看了会python,主要看了下正则表达式相关的一点知识

1.正则表达式是一个特殊的字符序列,它能帮助你方便 的检查一个字符串是否与某种模式匹配。re模块使Python语言拥有全部的正则表达式功能。

eg:import re

        r=r'ab'

        printre.findall(r,'abcdefgabcd')====>[‘ab’,’ab’]

注意:如果有元字符,注意使用转义字符’\’

eg:print ‘\n’====>换行

        print ‘\\n’====>输出\n

        print r ‘\n’====>输出\n

2.元字符介绍

^匹配行首

$匹配行尾

.匹配单字符

[]匹配指定的一个字符集

[^ ]补集匹配不在区间范围内的字符,注意^放在前面

eg:r = r‘123’

        re.findall(r,’12345612345’)====>[‘123’]

        r = r ‘345$’

        re.findall(r,’1234512345’)====>[‘345’]

        r = r’3.5’

        re.findall(r,’1234512345’)====>[‘345’,’345’]

        r = r‘a[a-z A-Z 0-9]c’

        re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘abc’,’aCc’,’a5c’,’a3c’]

        r = r’a[^0-9]c’

       re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘abc’,’aCc’]

3.特殊意义字符

\d代表数字[0-9]

\D非数字

\s空白字符

\S非空白字符

\w单词字符[a-zA-Z0-9_]

\W非单词字符

{}前一个字符的重复的次数 前一个字符在一个范围内的重复次数

*将前一字符匹配大于等于0次,{0,}效果等价于*

+将前一字符匹配大于等于1次,{1,}效果等价于+

?将前一字符匹配0次或1次,表示是否出现,{0,1}效果等 价于?

*?尽可能少的匹配

()分组

eg:r = r’a\dc’

        re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘a5c’,’a3c’]

        r = r’a\Dc’

        re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘abc’,’aCc’]

4.正则常用函数

compile编译后执行速度更快

findall返回匹配列表

match匹配字符串开头,返回第一个匹配的内容

search匹配字符串全文,返回第一个匹配的内容

sub字符串正则替换,返回替换字符串

subn字符串正则替换,返回元组(替换字符串,替换次数)

split返回切割后的列表

由于家里停电,就没有继续学习,晚上导致老徐的分享也搁浅了

上一篇 下一篇

猜你喜欢

热点阅读