首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用JSONata替换条件值数组

如何使用JSONata替换条件值数组
EN

Stack Overflow用户
提问于 2022-08-11 16:49:48
回答 1查看 73关注 0票数 3

我有大量的“应用程序状态”值,需要根据条件语句进行替换。

F.ex。

如果应用程序状态为“已批准的”“或”在DocuPhase"“中被搁置--待决资金”“仅丢失所有者权限”E 29E 110“未决付款处理”E 211E 112“未决质量控制检查”E 213/code>或E 114“评审”E 215,门户状态=E 116在应用状态下为E 120“搁置资金耗尽”E 221/code>,门户状态= Exhausted

  1. If应用程序状态为“拒绝等待”“或”拒绝PQCR"或“已完成”“,门户状态= Denied
  2. If应用程序状态为”支付导入“或发送的付款”E 239,门户状态= Disbursed
  3. Else (任何其他应用状态)= Requested

我试着做这样的事:

代码语言:javascript
复制
$replace(result.fields[label = "R.Application Status"].values.value.text, ["Approved", "Missing in DocuPhase", "On hold - Pending Funding", "Only Missing Owner Clearance", "Pending Payment Processing", "Pending Quality Control Review", "Reviewed"], "Under Review")

然而,这是行不通的,我不想做这种丑恶的事情:

代码语言:javascript
复制
$replace($replace($replace($replace($replace($replace($replace($replace(result.fields[label = "R.Application Status"].values.value.text, "Approved", "Under Review"), "Missing in DocuPhase", "Under Review"), "On hold - Pending Funding", "Under Review"), "Only Missing Owner Clearance", "Under Review"), "Pending Payment Processing", "Under Review"), "Pending Quality Control Review", "Under Review"), "Reviewed", "Under Review")
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-12 08:29:50

如果只需要获得从原始对象结构解析的状态列表,并替换某些状态,则可以使用传递给$replace函数的正则表达式,如:https://stedi.link/RMFB0yj

或者,如果在map运算符中使用三元表达式:https://stedi.link/bg96HrE,则可以实现相同的结果。

如果您需要保留原始结构,并且只希望某些状态被替换,那么我将这样做:https://stedi.link/wB5f9tu

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73324313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档