我有这个字符串:

0000000020 c90037:临时数据

我需要这个字符串:

临时:数据。

用PHP我可以这样做:

$str = '0000000020C90037:TEMP:data';
$arr = explode(':', $str);
$var = $arr[1].':'.$arr[2];

我如何有效地爆炸一个字符串在JavaScript的方式,它在PHP工作?


当前回答

使用String.split

“0000000020 c90037:临时数据”.split(“:”)

其他回答

看起来你想分开

像这样试试,

ans = str.split (":");

你可以用弦的两部分,

南在

试试这个:

arr = str.split (":");

只是对神经病brm的回答的一点补充(他的版本在IE中不能工作<=8)。 此代码是跨浏览器兼容的:

function explode (s, separator, limit)
{
    var arr = s.split(separator);
    if (limit) {
        arr.push(arr.splice(limit-1, (arr.length-(limit-1))).join(separator));
    }
    return arr;
}
String.prototype.explode = function (separator, limit)
{
    const array = this.split(separator);
    if (limit !== undefined && array.length >= limit)
    {
        array.push(array.splice(limit - 1).join(separator));
    }
    return array;
};

应该完全模仿PHP的爆炸()函数。

'a'.explode('.', 2); // ['a']
'a.b'.explode('.', 2); // ['a', 'b']
'a.b.c'.explode('.', 2); // ['a', 'b.c']