如何从这个字符串中获取"9"并将值放在长整型对象中
"["pusher-decision-voting-started",9]"
我尝试将字符串转换为 Json 对象,但它不适用于我
个位数:
val expression = ""["pusher-decision-voting-started",9]""
val result : Long? = expression.firstOrNull { it.isDigit() }
?.toString()
?.toLong()
坏习惯:如果你想得到超过1位数字,会产生不好的结果。
多位数:
val expression2 = ""["pusher-decision-voting-started",92]""
val result2 : Long? = expression2.filter { it.isDigit() }
.takeIf { it.isNotEmpty() }
?.toLong()
坏习惯:如果数字不接近,会产生错误的结果
两种结果都与缺失的数字有关。我希望它适合您的情况。
嗯,我不知道所有的上下文和整个要求,但我会尝试这个
long extractedValue = Long.valueOf(StringUtils.substringsBetween("[", "]").split(",")[1]);
or the java 8 Streams method
Long.valueOf(input.codePoints().filter(Character::isDigit).mapToObj(String::valueOf).collect(Collectors.joining("")));
但我建议在之前做一些检查