正则删除指定字符串_实例教学详解
时间:2026-01-27 10:25:48 267浏览 收藏
“纵有疾风来,人生不言弃”,这句话送给正在学习文章的朋友们,也希望在阅读本文《正则删除指定字符串_精准实例教学》后,能够真的帮助到大家。我也会在后续的文章中,陆续更新文章相关的技术文章,有好的建议欢迎大家在评论留言,非常感谢!
正则表达式可精准删除指定字符串:一、用replace()配字面量正则删固定串;二、用new RegExp动态构建并转义变量正则;三、用捕获组保留内部内容、删除包围结构。

如果您需要从一段文本中精准移除特定模式的字符串,正则表达式提供了一种高效、可控的删除手段。以下是几种在不同场景下使用正则表达式删除指定字符串的具体操作方法:
一、使用replace()配合字面量正则删除固定字符串
该方法适用于目标字符串完全固定、无变化规律的情况,通过字面量正则(不带修饰符或仅带g)匹配并替换为空字符串。
1、定义原始字符串变量,例如:const text = "订单编号:ORD-7890,客户ID:CUST-456,状态:已发货"。
2、调用字符串的replace方法,传入字面量正则/ORD-7890/g作为第一个参数,空字符串""作为第二个参数。
3、执行后返回新字符串:"订单编号:,客户ID:CUST-456,状态:已发货"。
二、使用new RegExp动态构建正则删除含变量的目标串
当需删除的字符串内容来自变量(如用户输入、接口返回值),无法写死在字面量中时,必须使用RegExp构造函数动态生成正则对象,避免特殊字符引发语法错误。
1、声明待删除的变量,例如:const target = "CUST-456"。
2、对target进行正则特殊字符转义,例如将点号、括号、连字符等替换为带反斜杠的字面形式,得到安全字符串:escapedTarget = target.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')。
3、创建RegExp实例:const regex = new RegExp(escapedTarget, 'g')。
4、执行替换:text.replace(regex, '')。
三、利用捕获组保留非目标部分并删除包围结构
该方法适用于需删除某段字符串及其前后固定标识(如括号、引号、标签),但希望保留内部内容的情形,通过分组捕获实现“精准剥离”而非全删。
1、设定原始文本:const html = "请查看重要通知内容"。
2、编写含捕获组的正则:/(.*?)/g,其中(.*?)捕获标签内任意内容。
3、使用replace并引用捕获组$1作为替换值:html.replace(/(.*?)/g, '$1')。
4、结果为:"请查看重要通知内容",span标签被删除,仅保留其中文字。
四、按行定位删除含特定前缀的整行
当目标字符串位于独立一行且具有唯一前缀(如日志中的DEBUG行、注释行),可借助行首锚点^与多行修饰符m,确保只删整行,不误伤跨行内容。
1、准备多行文本:const log = `INFO: 启动完成\nDEBUG: 缓存命中率92%\nWARN: 连接延迟升高`。
2、构造正则:/^DEBUG:.*$/gm,^匹配行首,.*匹配该行剩余全部字符,$匹配行尾,g保证全局,m启用多行模式。
3、执行替换:log.replace(/^DEBUG:.*$/gm, '')。
4、输出为:"INFO: 启动完成\n\nWARN: 连接延迟升高",DEBUG行被清空,其余行保留原位置。
五、删除重复出现的连续目标字符串(去重式删除)
针对同一字符串在文本中多次连续出现(如多个空格、重复标点、冗余分隔符),可利用量词+贪婪匹配一次性清除所有连续实例,避免循环替换。
1、设定原始字符串:const messy = "用户名: 张三 ,邮箱: zhang@ex.com "。
2、编写匹配连续空白的正则:/\s{2,}/g,{2,}表示匹配两个及以上空白字符(含空格、制表符等)。
3、替换为单个空格:messy.replace(/\s{2,}/g, ' ')。
4、结果为:"用户名: 张三 ,邮箱: zhang@ex.com ",所有多余空白压缩为单空格。
以上就是《正则删除指定字符串_实例教学详解》的详细内容,更多关于的资料请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
166 收藏
-
425 收藏
-
275 收藏
-
493 收藏
-
127 收藏
-
156 收藏
-
133 收藏
-
318 收藏
-
370 收藏
-
382 收藏
-
389 收藏
-
465 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习