gpt4 book ai didi

c# - 在 C# 中将字符串转换为字符串 [,]

转载 作者:太空宇宙 更新时间:2023-11-03 14:16:38 25 4
gpt4 key购买 nike

我有一个包含如下数据的字符串。我如何将它分配给字符串 [,]?

传递的字符串具有如下值:

string test = "{ \"BusinessOrg\", \"BusinessOrgID\", \"BusinessOrg\", \"BusinessOrgID\"}, { \"BusinessParameters\", \"BusinessOrgID\", \"BusinessOrg\", \"BusinessOrgID\"}"

同样在文本可视化器中查看如下:

{ "BusinessOrg", "BusinessOrgID", "BusinessOrg", "BusinessOrgID"}, { "BusinessParameters", "BusinessOrgID", "BusinessOrg", "BusinessOrgID"} "BusinessOrg", "BusinessOrgID", "BusinessOrg", "BusinessOrgID"}, { "BusinessParameters", "BusinessOrgID", "BusinessOrg", "BusinessOrgID"}

我无法将字符串分配给字符串[,]

string [,] strArray = test;

这是抛出错误无法将字符串转换为字符串[,]

最佳答案

您将需要构建自己的解析器来处理您拥有的这种数据格式。假设这个字符串的格式总是 { "A1", "A2", ... }, { "B1", "B2", ... } ... 并且没有转义字符(也就是说,您不希望在子字符串中出现 }"),那么代码实际上相当简单。

作为起点,您可以使用此算法描述。它没有经过优化,并且在解析方式上有点松懈(例如,允许 0 个或更多逗号/空白字符)——这只是一个起点。

  • (A) 吃掉空格和逗号,直到看到第一个 {
    • 分配一个新的string[]
    • (B) 吃掉空格和逗号,直到看到第一个 "}
      • 如果看到",将字符读入缓冲区直到再次看到";将此缓冲区作为字符串存储在当前数组中,必要时调整大小。从步骤 (B) 开始再次循环。
      • 如果看到,并且您还没有分配多维数组,那么现在就使用这个数组的长度作为第二个维度来分配;否则,只需将其存储在数组中,必要时调整大小。从步骤 (A) 开始再次循环。

如果在某个时刻,您到达了输入的末尾,您应该退出循环并返回您的数组。

关于c# - 在 C# 中将字符串转换为字符串 [,],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6419925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com