python 小案例正则表达式

正则表达式是一种用于匹配、查找和替换文本的强大工具。在提取网页中的目标数据时,可以使用正则表达式来搜索和匹配特定模式的文本。

以下是一个使用正则表达式提取网页中的目标数据的示例代码:

复制代码
import re

# 网页源代码
html = """
<div class="title">正则表达式教程</div>
<div class="content">这是一篇关于正则表达式的教程。</div>
<div class="author">作者:小明</div>
"""

# 提取标题
title_pattern = r'<div class="title">(.*?)</div>'
title_match = re.search(title_pattern, html)
if title_match:
    title = title_match.group(1)
    print("标题:", title)

# 提取内容
content_pattern = r'<div class="content">(.*?)</div>'
content_match = re.search(content_pattern, html)
if content_match:
    content = content_match.group(1)
    print("内容:", content)

# 提取作者
author_pattern = r'<div class="author">(.*?)</div>'
author_match = re.search(author_pattern, html)
if author_match:
    author = author_match.group(1)
    print("作者:", author)

运行以上代码,将会输出:

复制代码
标题: 正则表达式教程
内容: 这是一篇关于正则表达式的教程。
作者: 小明

在上述代码中,我们使用了re.search()函数来搜索匹配特定模式的文本。正则表达式的模式使用了特定的语法符号,如.表示任意字符,*表示前面的字符可以重复任意次数,.*?表示非贪婪匹配,()表示分组。通过使用分组,我们可以方便地提取匹配到的目标数据。

需要注意的是,当处理复杂的HTML结构时,正则表达式可能无法很好地处理,建议使用专门的HTML解析库(如BeautifulSoup)来提取网页中的数据。

本文由mdnice多平台发布

相关推荐
小灰灰搞电子12 分钟前
Python 信号量详解:并发控制实战
python·信号量
新时代牛马21 分钟前
cyclictest 毛刺从哪来?从ftrace、latencytop、perf到IRQ/调度延迟定位
android·开发语言·python·kotlin
Dxy12393102161 小时前
Python如何结合AI解决数据分析问题
人工智能·python·数据分析
IvanCodes1 小时前
Python 基础语法(七):推导式与常见遍历写法
开发语言·python
zhangzeyuaaa1 小时前
Python requests:raise_for_status() 与 4xx/5xx 异常层次详解
开发语言·python
泡海椒1 小时前
动态代理核心原理:JQuick-Java接口规则自动生成机制解析
java·开发语言·python
余槐i2 小时前
Firecrawl 实战:将网站转换为大模型可用数据
人工智能·python·工具·firecrawl
shirsl2 小时前
算法 Day 2 滑动窗口 + 栈 / 单调栈
开发语言·python·算法
步行cgn2 小时前
Spring 启动报错:BeanFactory not initialized 的原因与解决
java·python·spring
quantdash_cc2 小时前
股票历史数据为什么比实时行情更重要?回测结果失真的根源可能就在 K 线数据
开发语言·python·数据分析·量化交易·股票数据·quantdash