我有这个字符串:
0000000020 c90037:临时数据
我需要这个字符串:
临时:数据。
用PHP我可以这样做:
$str = '0000000020C90037:TEMP:data';
$arr = explode(':', $str);
$var = $arr[1].':'.$arr[2];
我如何有效地爆炸一个字符串在JavaScript的方式,它在PHP工作?
我有这个字符串:
0000000020 c90037:临时数据
我需要这个字符串:
临时:数据。
用PHP我可以这样做:
$str = '0000000020C90037:TEMP:data';
$arr = explode(':', $str);
$var = $arr[1].':'.$arr[2];
我如何有效地爆炸一个字符串在JavaScript的方式,它在PHP工作?
当前回答
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']
其他回答
console.log (0000000020 c90037:临时:数据).split(“:”).slice (1) . join (': '))
输出:临时数据
.split()将把字符串分解成多个部分 .join()将数组重新组装为字符串 当你想要数组没有第一项时,使用.slice(1)
只是对神经病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;
}
如果你喜欢php,看看php. js - JavaScript爆炸
或者在正常的JavaScript功能中: `
var vInputString = "0000000020C90037:TEMP:data";
var vArray = vInputString.split(":");
var vRes = vArray[1] + ":" + vArray[2]; `
这是从你的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'
创建一个对象:
// create a data object to store the information below.
var data = new Object();
// this could be a suffix of a url string.
var string = "?id=5&first=John&last=Doe";
// this will now loop through the string and pull out key value pairs seperated
// by the & character as a combined string, in addition it passes up the ? mark
var pairs = string.substring(string.indexOf('?')+1).split('&');
for(var key in pairs)
{
var value = pairs[key].split("=");
data[value[0]] = value[1];
}
// creates this object
var data = {"id":"5", "first":"John", "last":"Doe"};
// you can then access the data like this
data.id = "5";
data.first = "John";
data.last = "Doe";