首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Javascript相当于PHP Explode()

Javascript相当于PHP Explode()
EN

Stack Overflow用户
提问于 2010-12-23 06:34:34
回答 17查看 384.9K关注 0票数 371

我有这个字符串:

0000000020C90037:临时:数据

我需要这个字符串:

TEMP:数据。

在PHP中,我会这样做:

代码语言:javascript
复制
$str = '0000000020C90037:TEMP:data';
$arr = explode(':', $str);
$var = $arr[1].':'.$arr[2];

如何在JavaScript中有效地explode一个字符串呢?

EN

回答 17

Stack Overflow用户

回答已采纳

发布于 2010-12-23 06:37:36

这是PHP代码的直接转换:

代码语言:javascript
复制
//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'
票数 629
EN

Stack Overflow用户

发布于 2010-12-23 06:36:25

你不需要分开。您可以使用indexOfsubstr

代码语言:javascript
复制
str = str.substr(str.indexOf(':')+1);

但相当于explode的是split

票数 46
EN

Stack Overflow用户

发布于 2013-09-27 01:25:18

代码语言:javascript
复制
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()函数。

代码语言:javascript
复制
'a'.explode('.', 2); // ['a']
'a.b'.explode('.', 2); // ['a', 'b']
'a.b.c'.explode('.', 2); // ['a', 'b.c']
票数 44
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4514323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档