Javascript IE和Firefox正则表达式问题

Javascript IE和Firefox正则表达式问题,javascript,regex,internet-explorer,firefox,Javascript,Regex,Internet Explorer,Firefox,为什么IE和Firefox中的以下模式匹配结果不同 var str = 'a,b,c , d, e ,f'; var matches = str.split(/(\s+)?,(\s+)?/); alert(matches); IE: a,b,c,d,e,f firefox: a,,,b,,,c, , ,d,, ,e, ,,f 如何像IE一样匹配结果? 请回答我:( ie8和firefox v3.6.8 var str = 'a,b,c , d, e ,f'; v

为什么IE和Firefox中的以下模式匹配结果不同

var str = 'a,b,c , d,   e   ,f';
var matches = str.split(/(\s+)?,(\s+)?/);
alert(matches);

IE: 
a,b,c,d,e,f

firefox: 
a,,,b,,,c, , ,d,,   ,e,   ,,f
如何像IE一样匹配结果? 请回答我:(

ie8和firefox v3.6.8

var str = 'a,b,c , d,   e   ,f';
var matches = str.split(/\s*,\s*/);
alert(matches);

在Firefox中获得额外条目的原因是括号(
()
)在正则表达式中,被捕获为额外的匹配项。这通常是预期的行为,我认为IE有一个bug,因为它没有这样做。在我的示例中,正则表达式中没有括号,所以只能得到匹配项之间的文本。

IE和FireFox的哪个版本?答案撤销,+1,因为您实际上知道是的,它是这样做的