You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从数组各元素提取name与rate并转换为对象数组?

解决方案:提取指定字段并转换为对象数组

针对你给出的字符串数组,我们可以通过拆分字符串+遍历处理的方式快速提取目标字段,以下是具体实现(以JavaScript为例):

实现思路

每个字符串元素是用制表符(\t)分隔的多段内容:

  • name 对应第一段内容的前半部分(比如 BTCUSDT Perpetual 里的 BTCUSDT)
  • rate 对应第五段内容(拆分后数组的第4个索引项)

代码示例

const originalArray = [
  'BTCUSDT Perpetual\t8h\t05:14:44\t0.0100%\t0.01%\t0.3000% / -0.3000%\t0.3000% / -0.3000%',
  'ETHUSDT Perpetual\t8h\t05:14:44\t0.0100%\t0.01%\t0.3750% / -0.3750%\t0.3750% / -0.3750%',
  'BCHUSDT Perpetual\t8h\t05:14:44\t-0.0135%\t0.01%\t0.3750% / -0.3750%\t0.3750% / -0.3750%'
];

const resultArray = originalArray.map(item => {
  const parts = item.split('\t');
  // 提取name:拆分第一段内容,取空格前的部分
  const name = parts[0].split(' ')[0];
  // 提取rate:直接取第五个分段(索引4)
  const rate = parts[4];
  return { name, rate };
});

console.log(resultArray);

输出结果

执行后会得到符合要求的对象数组(注意:实际JavaScript中字符串类型的属性值需要加引号,这是语法规范):

[
  {"name":"BTCUSDT", "rate":"0.01%"},
  {"name":"ETHUSDT","rate":"0.01%"},
  {"name":"BCHUSDT","rate":"0.01%"}
]

拓展说明

如果你的场景是其他编程语言(比如Python),逻辑是一致的:

  • Python版本示例:
original_array = [
    'BTCUSDT Perpetual\t8h\t05:14:44\t0.0100%\t0.01%\t0.3000% / -0.3000%\t0.3000% / -0.3000%',
    'ETHUSDT Perpetual\t8h\t05:14:44\t0.0100%\t0.01%\t0.3750% / -0.3750%\t0.3750% / -0.3750%',
    'BCHUSDT Perpetual\t8h\t05:14:44\t-0.0135%\t0.01%\t0.3750% / -0.3750%\t0.3750% / -0.3750%'
]

result_array = []
for item in original_array:
    parts = item.split('\t')
    name = parts[0].split(' ')[0]
    rate = parts[4]
    result_array.append({"name": name, "rate": rate})

print(result_array)

内容的提问来源于stack exchange,提问作者attarrot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 23:15:36