news 2026/6/20 10:03:04

正则表达式 - 示例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
正则表达式 - 示例

正则表达式 - 实用示例大全

以下是正则表达式在实际开发中最常见的应用场景,涵盖验证、提取、替换等。每例包含正则模式说明测试字符串匹配/替换结果,帮助你快速理解和应用。

1. 常见验证类
场景正则表达式说明测试字符串结果
中国大陆手机号/^1[3-9]\d{9}$/以1开头,第二位3-9,共11位数字“13812345678”匹配
邮箱地址(常用版)/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/支持常见邮箱格式“test@example.com”匹配
身份证号(18位)`/1\d{5}(1920)\d{2}(0[1-9]1[0-2])(0[1-9][12]\d
IPv4 地址`/^((25[0-5]2[0-4]\d1\d{2}\d{1,2}).){3}(25[0-5]
十六进制颜色值`/^#([A-Fa-f0-9]{6}[A-Fa-f0-9]{3})$/i`支持 #FFF 和 #FFFFFF“#ff00ff”
2. 提取类(常结合分组使用)
场景正则表达式说明测试字符串提取结果
提取URL中的域名/(?:https?:\/\/)?(?:www\.)?([^\/:\?]+)/i捕获组1为域名“https://www.example.com/path”“example.com”
提取所有图片src/<img[^>]*src=["']([^"']+)["']/gi全局忽略大小写HTML文本所有src值
提取日期(多种格式)`/((\d{4}-\d{2}-\d{2})(\d{2}/\d{2}/\d{4})(\d{2}-\d{2}-\d{4}))/`分支匹配三种格式
提取金额(带¥或$)/(?<=[$¥])\d+(\.\d{2})?/正向后瞻提取数字部分“$99.99 或 ¥100”“99.99”、“100”
3. 替换类
场景正则 + 替换字符串说明原字符串替换后
日期格式转换(YYYY-MM-DD → MM/DD/YYYY)/(\d{4})-(\d{2})-(\d{2})/g → '$2/$3/$1'使用捕获组反向引用“2025-12-25”“12/25/2025”
千位分隔符添加/(?<=\d)(?=(\d{3})+(?!\d))/g → ','环视断言插入逗号“1234567890”“1,234,567,890”
脱敏手机号(中间4位*)/(1[3-9]\d)\d{4}(\d{4})/g → '$1****$2'保留前后段“13812345678”“138****5678”
去除HTML标签/<[^>]+>/g → ''移除所有标签

HelloWorld

“Hello World”
4. 高级实用示例
场景正则表达式说明
密码强度验证(8-20位,必须含大小写字母、数字)/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[A-Za-z\d!@#$%^&*]{8,20}$/多个正向前瞻组合检查
匹配成对HTML标签(同一标签名)/<([a-z]+)[^>]*>.*?</\1>/i反向引用标签名(注意:不处理嵌套)
匹配重复单词(文章查重)/\b(\w+)\b\s+\1\b/gi全局忽略大小写匹配如 “the the”
提取CSS中的px值/\b(\d+)px\b/gi提取所有像素值
匹配中文字符/[\u4e00-\u9fa5]+/g提取或验证中文
5. 综合实战:解析日志行

假设日志格式:

2025-12-25 10:30:45 INFO [user:admin] Login success from 192.168.1.100

提取各部分:

/^(\d{4}-\d{2}-\d{2})\s(\d{2}:\d{2}:\d{2})\s([A-Z]+)\s\[user:([^]]+)\]\s(.*)\sfrom\s(\d+\.\d+\.\d+\.\d+)$/
  • 组1: 日期 “2025-12-25”
  • 组2: 时间 “10:30:45”
  • 组3: 级别 “INFO”
  • 组4: 用户 “admin”
  • 组5: 消息 “Login success”
  • 组6: IP “192.168.1.100”

这些示例覆盖了80%以上的日常正则需求。你可以直接复制使用,或根据具体语言(如JavaScript、Python、Java)稍作调整。

如果你有特定场景(如解析JSON、处理Excel、爬虫规则等),欢迎提供细节,我可以为你定制最优正则表达式!


  1. 1-9 ↩︎

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

CMake 构建流程

CMake 构建流程详解 CMake 的构建过程分为两个主要阶段&#xff1a;配置阶段&#xff08;Configure&#xff09; 和 构建阶段&#xff08;Build&#xff09;&#xff0c;可选还有测试阶段&#xff08;Test&#xff09; 和 安装阶段&#xff08;Install&#xff09;。理解这个流…

作者头像 李华
网站建设 2026/6/11 2:12:46

16、地图与位置功能开发指南

地图与位置功能开发指南 1. 地图与位置功能基础 在开发过程中,有一个新函数会接收 _coords 参数,并将这些值作为自定义字段传递给 Appcelerator 云服务的照片对象。Appcelerator 云服务支持对照片对象进行地理定位查询,这样就能利用存储在照片自定义字段中的信息来查找照…

作者头像 李华
网站建设 2026/6/18 22:40:11

终极SQL查询压力测试指南:SqlQueryStress完整使用教程

终极SQL查询压力测试指南&#xff1a;SqlQueryStress完整使用教程 【免费下载链接】SqlQueryStress SqlQueryStress 是一个用于测试 SQL Server 查询性能和负载的工具&#xff0c;可以生成大量的并发查询来模拟高负载场景。 通过提供连接信息和查询模板&#xff0c;可以执行负载…

作者头像 李华
网站建设 2026/6/15 11:43:35

PaddlePaddle镜像集成飞桨框架最新版,全面支持Transformer结构

PaddlePaddle镜像集成飞桨框架最新版&#xff0c;全面支持Transformer结构 在中文自然语言处理的实际落地过程中&#xff0c;开发者常常面临一个尴尬的局面&#xff1a;模型设计得再精巧&#xff0c;一旦进入部署阶段&#xff0c;就可能因为环境依赖错乱、CUDA版本不匹配或Pyth…

作者头像 李华
网站建设 2026/6/18 14:53:43

终极指南:在Jupyter环境中轻松运行C代码的完整方案

你是否厌倦了传统的C语言开发流程&#xff1f;在编辑器和终端之间来回切换、手动编译调试的过程是否让你感到繁琐&#xff1f;现在&#xff0c;通过Jupyter C Kernel&#xff0c;你可以获得全新的C语言开发体验。这个开源项目将C语言的强大功能完美融入交互式的Jupyter Noteboo…

作者头像 李华
网站建设 2026/6/17 23:04:11

海尔智能设备无缝接入HomeAssistant:打破品牌壁垒的完整指南

海尔智能设备无缝接入HomeAssistant&#xff1a;打破品牌壁垒的完整指南 【免费下载链接】haier 项目地址: https://gitcode.com/gh_mirrors/ha/haier 在智能家居蓬勃发展的今天&#xff0c;用户面临的最大困扰往往是不同品牌设备之间的兼容性问题。海尔作为家电行业的…

作者头像 李华