【问题标题】:How to replace *( in a string如何在字符串中替换 *(
【发布时间】:2026-02-24 06:05:01
【问题描述】:

我的字符串是 Mario *(cart),我需要替换 *( 以获得 Mario (cart)。我不想只替换星号,但星号后跟一个在正则表达式中使用全局的左括号。

这里是我要修复的代码:

var str = 'Mario *(cart)';
str=str.replace(/\*\(/g,'(');

更正 正则表达式工作正常,但当我离开括号时没有值时不起作用。

我在Creating dynamic formula做了这个代码来回答

jsFiddle:https://jsfiddle.net/qpsh940m/

【问题讨论】:

  • 使用相同的代码为我工作。
  • 这看起来不错 - 您遇到了什么问题?
  • “这是我要修复的代码”,修复什么?
  • Uncaught SyntaxError: Unexpected token *
  • 我在写小提琴

标签: javascript jquery regex string replace


【解决方案1】:

按照http://regexr.com/ 你的正则表达式没问题。

javascript replace docs 之后你使用正确.replace

您的代码没有任何问题,我在 javascript 控制台 (chrome) 上对其进行了测试,它工作正常,这是日志:

var str = 'Mario *(cart)';
undefined
alert(str)
undefined
var str2 = str.replace(/\*\(/g,'(');
undefined
console.log(str2)
VM650:2 Mario (cart)
undefined

你想在哪里实现它?

无论你在哪里读到它,只要它正确和完整。

【讨论】:

  • 空括号仍然存在问题