如何使用JavaScript正则删除(UUID: )开头的内容并替换双引号为单引号
JavaScript 文本替换实现方案
完整可运行代码
// 原始文本 const rawText = 'TV "my-samsung" (UUID: a1c3bbc1d27c5be8:8baabe2fa7f5d9ca) is already switched off.'; // 执行两次替换即可完成需求 const targetText = rawText // 规则1:删除所有以(UUID: 开头的括号包裹内容,\(转义左括号,.*?非贪婪匹配到第一个右括号 .replace(/\(UUID:.*?\)/g, '') // 规则2:全局替换所有双引号为单引号 .replace(/"/g, "'") // 可选:删除UUID内容移除后产生的多余首尾空格 .trim(); console.log(targetText); // 输出结果:TV 'my-samsung' is already switched off.
之前尝试失败的原因说明
- 正则
\([\s\S]*?\)没有加UUID:前缀限制,会匹配所有括号内容,容易误删其他合法括号内容,且没有针对性匹配你要删除的目标段 - 直接调用
replace("(UUID", "")只会替换(UUID这4个字符,后续的UUID值、右括号都会残留,无法删除整段括号内容
内容的提问来源于stack exchange,提问作者user21
相关产品推荐
相关产品推荐

