json - 在 Kotlin 中从类似 JSON 的字符串中解析列表
问题描述
我有一个下面的字符串:
[{-600,0},{0,10},{100,20},{150,100},{400,10},{500,0}]
看起来它不是一个正确的json。我需要从这个字符串中获取每个值,即 -600、0、10、20 等。
是否可以通过 Gson.parseJson() 或者我必须手动管理它?如何?有什么逻辑吗?请指导..
解决方案
不妨放弃将其视为“几乎是 JSON”并将其解析为字符串 - 删除[]{}
字符和split
on ,
:
fun main() {
val regex = """(\{|\}|\[|\])""".toRegex()
val data = "[{-600,0},{0,10},{100,20},{150,100},{400,10},{500,0}]"
regex.replace(data, "").split(",").also {
println(it) // [-600, 0, 0, 10, 100, 20, 150, 100, 400, 10, 500, 0]
}
}
推荐阅读
- sql - SQL“排除”字母数字条件不起作用
- reactjs - REACT / AG-GRID:检索数据后动态设置 columnDefs
- python - Set border width for networkx label?
- c# - C# 循环忽略条件语句
- windows - 如何让批处理文件通过新的 Windows 终端运行?
- c++ - 我如何知道 std::hash 是否根据 std::identity 实现?
- c - 如何将 DFT 输出缩放到 0.0 到 1.0
- eclipse - How to change highlight color for Checkstyle warnings in Eclipse?
- docker - Docker ADD 命令产生“找不到文件”错误
- c# - 面板应淡入,然后应加载新场景