001.re正则表达式-

1.split 函数

分割字符串产生一个列表

 re.split(pattern,str)

import re

str='helllo word'

print(re.split(r' ',str))

2. sub 函数

 替换

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

print(re.sub('word','world',str))

3. subn函数

 替换并显示次数

 re.subn(pattern,repel,str[,count])

s='jintian tianqi '

print(re.subn('i','l',s))

4. re中的属性和方法

import re

print(re.__all__)

help(re.fullmatch)

5.其他

# re.I:忽略大小写

# re.L:本地化识别匹配

# re.M:多行匹配

# re.S:匹配所有字符串,包括换行符

# re.U:根据Unicode解析字符串

# re.X:忽略空格和#后面的内容

import re

se='this is is sis is a island'

print(re.sub('is',' ',se,2))

print(re.sub(r'\bis\b',' ',se,2))

print(re.sub('T',' ',se,0,re.I))

# split

print(re.split(' ',se))

print(re.split(r'\s',se))

6. compile 生成正则表达式

 re.compile(pattern,[,flags])

smail='我的QQ邮箱是email:[email protected].; 电话是18061763306'

p = re.compile(r'email:(.+?)\.;',)

print(re.findall(p,smail))

print(p.findall(smail))

7. fullmatch函数

 返回所有匹配值(什么叫字符完全匹配)

print(re.fullmatch('is',se))

print(re.fullmatch('this is is sis is a island',se))

8. escape函数

 转义

 re.escape(pattern)

s2='http://baidu.com'

print(re.escape(s2))

op = ['+','-','*','\\']

for i in op:

      print(re.escape(i))

9. finditer

 生成一个匹配值的迭代器器

 re.finditer

s3=re.finditer('is',se)

print(s3)

print(type(s3))

for i in s3:

    print(i)

10.拓展库

 request

存放所有的网址

def allurl():

    html=[]

    for i in range(10):

        url="https://movie.douban.com/top250?start=%d&filter="%(i*25)

        html.append(url)

    return html

你可能感兴趣的:(001.re正则表达式-)