正则-re


import re

# re: 用于提取字符串内容的模块。


# 1> 创建正则对象;2> 匹配查找;3> 提取数据保存;
string = """
<html>
<div><a href='www.baidu.com'></a></div></div></div>
</div><title>正则</title></div>
<html><div><a href='www.baidu1.com'></a></div>
</div></div></div><title>正则1</title></div>
<html><div><a href='www.baidu2.com'></a>
</div></div></div></div><title>正则2</title></div>
<html><div><a href='www.baidu3.com'>
</a></div></div></div></div><title>正则3</title></div>"""
# ()是提取的一组数据 \b \b
# re.S 可以将正则的搜索域不再是一行,而是整个html字符串。
pattern = re.compile(r"<a href='(.*?)'>.*?<title>(.*?)</title>", re.S)

# .*? 非贪婪匹配
# .* 贪婪匹配

# \d+
# \w+
# [a-z0-9]
# \d{4}

# findall() 返回是列表
res = re.findall(pattern, string)
print(res)

string = "a1234booooobccccccb"
# a.*?b a1234b
# a.*b a1234booooobccccccb


# 查找单个数据:search(): 不考虑数据的位置。 match(): 必须保证数据在目标字符串的起始位置。
string = '2a3'
print(re.match(re.compile('(\d)'), string))


阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭