news 2026/5/3 23:26:31

# 13|正则表达式入门与实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
# 13|正则表达式入门与实战

很多初学者第一次接触正则表达式时,感受通常有点复杂:

  • 看别人写的正则像天书
  • 自己写时总觉得括号和符号太多
  • 明明只是想找个手机号,怎么这么麻烦

但如果你做过这些事:

  • 提取邮箱
  • 校验手机号
  • 批量替换文本
  • 从一段字符串里找日期、数字、订单号

你很快就会发现,正则表达式真的非常有用。

这篇文章我们不追求一次性讲全,而是先把最常用、最实战的部分讲透。


一、什么是正则表达式

正则表达式可以理解成:

一套用于描述字符串匹配规则的语法。

例如你想表达:

  • 这个字符串里有没有数字
  • 这个内容是不是邮箱
  • 这个文本里所有手机号在哪

这些都可以用正则表达式完成。

在 Python 中,我们通常使用re模块。


二、最基础的匹配:re.search()

importre text="我的手机号是13812345678"result=re.search(r"138",text)print(result)

如果匹配到,会返回一个匹配对象;如果没匹配到,返回None

注意这里的:

r"138"

前面的r表示原始字符串,写正则时很常见,能避免转义混乱。


三、匹配一个数字:\d

\d表示一个数字字符。

importre text="订单号:A1024"result=re.search(r"\d",text)print(result.group())

输出:

1

如果想找多个数字,可以配合量词。


四、量词:匹配多少次

1.+

表示前面的规则出现 1 次或多次。

re.search(r"\d+","abc123xyz").group()

输出:

123

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/3 23:25:01

实战演练,在快马平台用jdk21虚拟线程构建高并发web应用

最近在尝试用JDK21的虚拟线程特性构建一个高并发的文件服务器,发现这个新特性确实能大幅简化并发编程的复杂度。今天就把整个实践过程记录下来,分享给同样对虚拟线程感兴趣的朋友们。 项目背景与需求分析 这个文件服务器的核心需求很简单:支…

作者头像 李华
网站建设 2026/5/3 23:21:30

终极指南:Twitter4J与Gradle/Maven集成的完整依赖管理解决方案

终极指南:Twitter4J与Gradle/Maven集成的完整依赖管理解决方案 【免费下载链接】Twitter4J Twitter4J is an open-source Java library for the Twitter API. 项目地址: https://gitcode.com/gh_mirrors/tw/Twitter4J Twitter4J是一款强大的开源Java库&#…

作者头像 李华
网站建设 2026/5/3 23:18:26

终极指南:如何使用Android Signature Pad构建企业级电子签名系统

终极指南:如何使用Android Signature Pad构建企业级电子签名系统 【免费下载链接】android-signaturepad A custom Android View for drawing smooth signatures 项目地址: https://gitcode.com/gh_mirrors/an/android-signaturepad 在数字化转型加速的今天&…

作者头像 李华