使用JavaScript正则表达式剥离包含括号的子字符串

使用JavaScript正则表达式剥离包含括号的子字符串,javascript,regex,Javascript,Regex,我有一个名为myString的字符串,其中包含我不想要的结尾部分: var myString = 'The sentence is good up to here foo (bar1 bar2)'; var toBeRemoved = 'foo (bar1 bar2)'; 如何使用最佳JavaScript正则表达式删除我不想要的部分。方法replace()的括号似乎有问题 编辑: 我确实像马修说的那样试图逃跑。我原以为那不管用,但现在只要再试一次就行了 var myString = 'The

我有一个名为myString的字符串,其中包含我不想要的结尾部分:

var myString = 'The sentence is good up to here foo (bar1 bar2)';
var toBeRemoved = 'foo (bar1 bar2)';
如何使用最佳JavaScript正则表达式删除我不想要的部分。方法replace()的括号似乎有问题

编辑:

我确实像马修说的那样试图逃跑。我原以为那不管用,但现在只要再试一次就行了

var myString = 'The sentence is good up to here foo (bar1 bar2)';
var toBeRemoved = 'foo (bar1 bar2)';
document.write(myString .replace(/foo \(bar1 bar2\)/i, ''));

谢谢Matthew。

你需要以
\(
\)
的身份逃离父母。例如

myString.replace(/\w+\s+\(.*?\)/, "")

您需要以
\(
\)
的形式转义参数。例如

myString.replace(/\w+\s+\(.*?\)/, "")

我以为我这么做了,但没用,但我只是再试了一次,结果成功了。cathat,也许你在使用
RegExp
构造函数。在这种情况下,您需要双重转义参数(和其他字符)。我以为我这样做了,但没有成功,但我只是再次尝试,结果成功了。cathat,也许您使用的是
RegExp
构造函数。在这种情况下,您需要双重转义参数(和其他字符)。