You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Logic Apps中拆分JSON负载字符串的文本与数值组件?

嘿,这个问题其实用Logic Apps自带的表达式就能轻松搞定,完全不用依赖认知分析这类工具~ 针对你这种固定格式的字符串(命令 + 手机号 + 带空格的消息),我给你两种实用的拆分方法:

方法一:用split+skip+join组合(推荐,灵活度高)

这种方法能完美处理消息里带空格的情况,步骤如下:

  • 提取命令(第一个组件):把字符串按空格拆分后取第一个元素

    split(triggerFormDataValue('text'), ' ')[0]
    

    代入示例会得到 sendSMS

  • 提取手机号(第二个组件):拆分后取第二个元素

    split(triggerFormDataValue('text'), ' ')[1]
    

    代入示例会得到 1122334455

  • 提取实际消息(第三个组件):跳过前两个拆分后的元素,再把剩下的部分用空格拼接起来,这样不管消息里有多少空格都能完整保留

    join(skip(split(triggerFormDataValue('text'), ' '), 2), ' ')
    

    代入示例会得到 actual message

方法二:用substring+indexOf(适合格式绝对固定的场景)

如果你的字符串格式完全不会变(比如手机号后面一定只有一个空格,消息里的空格也不影响索引定位),可以用索引截取的方式:

  • 提取命令:找到第一个空格的位置,截取开头到该位置的内容

    substring(triggerFormDataValue('text'), 0, indexOf(triggerFormDataValue('text'), ' '))
    
  • 提取手机号:先找到第一个空格后的第二个空格位置,再截取中间的手机号部分

    substring(triggerFormDataValue('text'), add(indexOf(triggerFormDataValue('text'), ' '), 1), indexOf(substring(triggerFormDataValue('text'), add(indexOf(triggerFormDataValue('text'), ' '), 1)), ' '))
    
  • 提取实际消息:截取第二个空格之后的所有内容

    substring(triggerFormDataValue('text'), add(add(indexOf(triggerFormDataValue('text'), ' '), 1), indexOf(substring(triggerFormDataValue('text'), add(indexOf(triggerFormDataValue('text'), ' '), 1)), ' ')))
    

    不过这种方法不够灵活,一旦格式有变化(比如手机号多一位或者消息开头有额外空格)就会出错,所以更推荐第一种方法。

你可以直接在Logic Apps的表达式编辑器里测试这些代码,把triggerFormDataValue('text')替换成你的示例字符串'sendSMS 1122334455 actual message',就能看到结果是否符合预期啦~

内容的提问来源于stack exchange,提问作者tcbwazi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:02:44