为了账号安全,请及时绑定邮箱和手机立即绑定

相当于PHP Explode()的Javascript

相当于PHP Explode()的Javascript

慕村225694 2019-11-06 10:03:50
我有一个看起来像这样的字符串:0000000020C90037:TEMP:数据我需要在第一个冒号之后抓取所有内容,以便获得TEMP:data。我不经常使用Javascript,如果是PHP,我会这样做:$str = '0000000020C90037:TEMP:data';$arr = explode(":", $str);$var = $arr[1].":".$arr[2];
查看完整描述

3 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

这是您的PHP代码的直接转换:


//Loading the variable

var mystr = '0000000020C90037:TEMP:data';


//Splitting it with : as the separator

var myarr = mystr.split(":");


//Then read the values from the array where 0 is the first

//Since we skipped the first element in the array, we start at 1

var myvar = myarr[1] + ":" + myarr[2];


// Show the resulting value

console.log(myvar);

// 'TEMP:data'


查看完整回答
反对 回复 2019-11-06
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

您无需拆分。您可以使用indexOf和substr:


str = str.substr(str.indexOf(':')+1);

但是,相当于explode将split。


查看完整回答
反对 回复 2019-11-06
?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

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的explode()函数。


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

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

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


查看完整回答
反对 回复 2019-11-06
  • 3 回答
  • 0 关注
  • 364 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信