为了账号安全,请及时绑定邮箱和手机立即绑定

如何从字符串对象中获取数字?

如何从字符串对象中获取数字?

长风秋雁 2023-09-13 15:41:36
如何从该字符串中获取“9”并将该值放入长对象中"["pusher-decision-voting-started",9]"我尝试将字符串转换为 Json 对象,但它对我不起作用
查看完整描述

2 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

个位数:


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()

坏习惯:如果数字不接近,会产生错误的结果


这两个结果都适用于缺失的数字。我希望它适合你的情况。


查看完整回答
反对 回复 2023-09-13
?
莫回无

TA贡献1865条经验 获得超7个赞

嗯,我不知道所有的背景和整个要求,但我会尝试这个


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("")));

但我建议先做一些检查


查看完整回答
反对 回复 2023-09-13
  • 2 回答
  • 0 关注
  • 84 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信