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

如何将特定格式字符串转换为16×3的二维数组?

解决方案

步骤说明

  1. 先用Split('|')将原字符串按竖线分割成16个分组(每组对应3个值)。
  2. 根据需求选择对应方式填充二维数组:

情况1:生成16×1的二维数组(每个元素为完整的分组字符串,对应你给出的示例格式)

string values = "4774,55567,44477|14555,4447,5687|416644,4447,5623|..."; // 完整的48个值字符串

// 分割为16个分组
string[] groups = values.Split('|');

// 初始化16×1二维数组
String[,] vals = new String[16, 1];

// 填充数组
for (int i = 0; i < groups.Length; i++)
{
    vals[i, 0] = groups[i];
}

情况2:生成真正的16×3二维数组(每个元素为单个值,48个值对应16行3列)

如果实际需求是把每个单独的值存入数组(而非保留逗号分隔的字符串),可以用二次拆分:

string values = "4774,55567,44477|14555,4447,5687|416644,4447,5623|..."; // 完整的48个值字符串

// 分割为16个分组
string[] groups = values.Split('|');

// 初始化16×3二维数组
String[,] vals = new String[16, 3];

// 填充数组
for (int i = 0; i < groups.Length; i++)
{
    // 每个分组按逗号拆分为3个单独值
    string[] singleValues = groups[i].Split(',');
    // 可选:验证每组是否恰好3个值
    if (singleValues.Length != 3)
    {
        throw new InvalidOperationException($"第{i+1}组的值数量不符合要求");
    }
    vals[i, 0] = singleValues[0];
    vals[i, 1] = singleValues[1];
    vals[i, 2] = singleValues[2];
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 03:45:30