【问题标题】:Split String from list or hash map array list in Kotlin从 Kotlin 中的列表或哈希映射数组列表中拆分字符串
【发布时间】:2021-12-13 16:36:03
【问题描述】:

我在 Json 列表中有这个输出,我想在我的应用中使用这个列表的值

val dataOfTestToJson =  Gson().toJson(maps)
//I want this
E = 2 + 0 + 2 + 1
I = 2 + 0

//这是输出

[{"Q1":"E_2"},{"Q2":"E_0"},{"Q3":"E_2"},{"Q4":"I_2"},{"Q5":"I_0"},{"Q6":"E_1"}]

我想获取例如字符串中的 E 和 -2 将其用作公式中的数字。如何提取这些实体中的每一个并将它们放入变量(E 和 I)中?

【问题讨论】:

    标签: android json kotlin arraylist


    【解决方案1】:

    我不完全确定这是否是您的意思。但是,如果您想将所有 E_ 值加到一个变量中,并将所有 I_ 加到另一个变量中,您可以使用正则表达式来完成,而无需制作任何列表、映射或其他对象,只需使用您得到的字符串。

    例如这样:

    val response = """[{"Q1":"E_2"},{"Q2":"E_0"},{"Q3":"E_2"},{"Q4":"I_2"},{"Q5":"I_0"},{"Q6":"E_1"}]"""
    val eRegex = Regex("E_(\\d+)")
    val iRegex = Regex("I_(\\d+)")
    val e = eRegex.findAll(response).map { it.groupValues[1].toInt() }.sum()
    val i = iRegex.findAll(response).map { it.groupValues[1].toInt() }.sum()
    

    e 在这种情况下为 5,i 为 2

    【讨论】:

    • 非常感谢您让我开心..
    猜你喜欢
    • 2012-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    相关资源
    最近更新 更多