首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将字符串数据格式化为“1,fish#,15,bird#,4,horse#]”到“1,fish#15,bird#4,horse#”

如何将字符串数据格式化为“1,fish#,15,bird#,4,horse#]”到“1,fish#15,bird#4,horse#”
EN

Stack Overflow用户
提问于 2022-10-20 05:13:56
回答 2查看 42关注 0票数 -1
代码语言:javascript
复制
how to format string data like this '[1,fish#, 15,bird#, 4,horse#]' 

to '1,fish#15,bird#4,horse#'

EN

回答 2

Stack Overflow用户

发布于 2022-10-20 05:24:01

您需要创建模型并将列表映射到模型

在您的例子中,您的模型类如下所示

代码语言:javascript
复制
class User  {
  final int user;
  final String tag;
  User({ required this.user, required this.tag, 
  
  });
}

像这样的列表

代码语言:javascript
复制
 final List<User> userlist = [User(user: 4, tag: "ahmed#"),User(user: 15, tag: "up#"),];

当您需要像这样使用数据时

代码语言:javascript
复制
userlist[0].tag,//0 is index

示例

代码语言:javascript
复制
print(userlist[0].tag,) //this will print  **ahmed#**
票数 0
EN

Stack Overflow用户

发布于 2022-10-20 07:05:19

只需使用joinreplaceAll

代码语言:javascript
复制
export default function App() {
  const encode = (source: string[]): string => {
    return source.join(",").replaceAll("#,", "#");
  };

  const decode = (source: string): string[] => {
    return source
      .split(",")
      .reduce((p, n) => [...p, ...n.split("#")], new Array<string>())
      .map((e, i) => (i % 2 === 0 ? e : `${e}#`))
      .filter((e) => !!e);
  };

  let source = ["1", "fish#", "15", "bird#", "4", "horse#"];

  let sourceEncoded = encode(source);
  console.log("encode", sourceEncoded);
  // -> 1,fish#15,bird#4,horse# 

  let sourceDecoded = decode(sourceEncoded);
  console.log("decode", sourceDecoded);
  // -> ["1", "fish#", "15", "bird#", "4", "horse#"]

  return (
    <div className="App">
      ...
    </div>
  );
}

代码筛选箱示例(控制台)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74134727

复制
相关文章

相似问题

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