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多平台发布

相关推荐
卷无止境3 小时前
RAGFlow 项目全景报告:从文档解析引擎到 Agent 原生数据库
后端·python
灿飞屋5 小时前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
benchmark_cc5 小时前
单只股票五档盘口接入个人研究仓库:QuantDash 读取、校验与易错点
python·数据分析·pandas·量化交易·股票数据·quantdash
青少儿编程课堂6 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:中缀表达式求值解析
c++·python·算法·bfs·信息学竞赛
灿飞屋8 小时前
Kotlin与Java虚拟机四:函数
java·python·kotlin·安卓·android jetpack
一晌小贪欢10 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公
一条大祥脚11 小时前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
10年前端老司机11 小时前
Milvus 8种检索能力实践
数据库·python·agent
Sakura_j_h_12 小时前
从零写一个 MCP stdio Server:用 Python 校验博客文章格式
开发语言·python·自动化·ai工具·mcp·json-rpc
大草原的小灰灰12 小时前
LLM应用的标准开发框架LangChain(八)- 中间件
python·中间件·langchain