【问题标题】:Extract Number from Text从文本中提取数字
【发布时间】:2018-06-01 00:16:14
【问题描述】:

试图从这个 JSON 中获取一个数字:

{
   "event":"shipment.status_update",
   "status":"in_transit",
   "updated_at":"2017-12-08T03:29:24.591+00:00",
   "shipment_id":2023431,
   "shid":2023431,
   "shipment_public_id":"shp_tnwr4GjD",
   "order_number":"MF17966",
   "source_system_id":null
}

需要提取shid后的数字。在这种情况下,2023431

编辑:

我正在尝试构建一个 Zapier 工作流程:

  1. 捕获原始钩子
  2. 运行从上方输出 shid 值的 Javascript
  3. 然后我将使用该值来调用 web 服务
  4. 最后向个人发送电子邮件

我能够抓住重点,并且预计工作流程的第 3 和第 4 部分不会出现任何问题。但是捕获那个 shid 被证明是很麻烦的。

到目前为止,我已经尝试在 Code 元素中使用以下内容:

shid = (inputData["shid"]);
output = shid;

【问题讨论】:

  • 为什么不解码它(它看起来像 JSON)并解决元素而不是强制模式匹配(对于您要呈现的数据类型,这是一个非常脆弱的策略)
  • 我投票结束这个问题,因为 OP 只是在寻求解决方案,没有个人研究/努力。
  • 没有使用 RegEx 的任何地方。尝试为 Zapier 工作流程提取数据。
  • 这个可以关闭。在发布之前应该花更多的时间。

标签: javascript json zapier


【解决方案1】:

你应该使用json.loads()

import json
output = json.loads(text)
print (output["shid"])

号码将被打印出来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-12-28
    • 2016-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-05
    • 1970-01-01
    相关资源
    最近更新 更多