【问题标题】:What's the best way to get a value of a JSON string?获取 JSON 字符串值的最佳方法是什么?
【发布时间】:2020-03-01 19:27:22
【问题描述】:

我有这个巨大的字符串,它是我的一个对象的键值(我没有这样做,它是由机器人生成的)。

我正在尝试从前端抓取文本并显示它。所以在这种情况下:“文本:嗨”我想抓住“嗨”并显示它。我知道我可以使用子字符串搜索文本,但我唯一知道“文本”是否会在那里,但我想要它后面的数据,我不知道每次数据会是什么。

"{"event": "user", "timestamp": 1583019471.5611057, "text": "Alex", "parse_data": {"intent": {"name": "utter_interview", "confidence": 0.6946980357170105}, "entities": [], "intent_ranking": [{"name": "utter_interview", "confidence": 0.6946980357170105}, {"name": "utter_greet", "confidence": 0.18765409290790558}, {"name": "utter_closeout", "confidence": 0.11764788627624512}], "text": "Alex"}, "input_channel": "rest", "message_id": "0375d021d0fd4a8eb2ff8f519c72d8d6", "metadata": {}}"

我该怎么做?

【问题讨论】:

  • 看起来像JSON,你试过吗...解析它?
  • 是的,数据已被提取和解析,我在控制台将其记录为 JSON,这是键值对之一。对不起,如果这不是你要问的?
  • 但该值是也是 JSON。所以你可以将 that 解析成 JavaScript 对象。
  • 既然你说是字符串,那么这是JSON,还需要解析。在上面调用JSON.parse,你会得到一个对象。
  • 嗯,好的,是的。我会试一试:)

标签: javascript reactjs string substring


【解决方案1】:

我觉得你可以去

const data = JSON.parse(string);
const text = data.text

如果您粘贴的字符串是解析后的JSON中的值,则需要进一步解析,即上述步骤。

但是,如果不想解析,可以使用正则表达式,匹配文本键。

【讨论】:

  • 很高兴能帮上忙!
猜你喜欢
  • 1970-01-01
  • 2012-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-07
相关资源
最近更新 更多