内外定界符在我的JavaScript代码,我有一个字符串,它是这样的:分割字符串在JavaScript中
"1943[15]43[67]12[32]"
我想返回一个这样的数组:
["1","9","4","3","15","4","3","67","1", 2","32"]
也就是说,我希望它将每个字符都分开,除了括号内的数字,我想将它们保留为一个元素。
有没有一个优雅的方式来做到这一点?
内外定界符在我的JavaScript代码,我有一个字符串,它是这样的:分割字符串在JavaScript中
"1943[15]43[67]12[32]"
我想返回一个这样的数组:
["1","9","4","3","15","4","3","67","1", 2","32"]
也就是说,我希望它将每个字符都分开,除了括号内的数字,我想将它们保留为一个元素。
有没有一个优雅的方式来做到这一点?
var str = '1943[15]43[67]12[32]',
matches = str.match(/\d|\[\d+\]/g);
for (var i = 0, matchesLength = matches.length; i < matchesLength; i++) {
matches[i] = matches[i].replace(/\D/g, '');
};
console.log(matches);
// ["1", "9", "4", "3", "15", "4", "3", "67", "1", "2", "32"]
var str = "1943[15]43[67]12[32]",
re = new RegExp(/(\d)|\[(\d+)\]/g),
out = [],
m;
while (m = re.exec(str)) {
out.push(m[2] || m[0]);
}
console.log(out); // ["1", "9", "4", "3", "15", "4", "3", "67", "1", "2", "32"]
不,你不会错过什么,这是我的懒惰。我修改了它。 – 2011-02-24 06:23:26
@彼得谢谢,希望这对你来说足够优雅。 :) – alex 2011-02-24 06:24:50
是的,是的。非常感谢,它的工作。如果我有足够的代表投票你,我会的。 – 2011-02-24 06:37:07