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

如何在Power Automate中从JSON解析后的邮件主题提取参考号并写入SQL?

在Power Automate中从邮件主题提取参考号(用于SQL入库)

你提到的"mid"字符串操作,在Power Automate里对应的是substring函数,结合定位函数就能精准提取主题里的参考号。以下是具体实现方法,分场景说明:

核心逻辑

Power Automate的表达式是处理解析后JSON字段的关键(而非在JSON本身里写语法),你需要基于邮件主题的格式,先定位参考号的起始位置和长度,再用substring提取。


场景1:参考号有固定前缀(如"REF"开头)

假设邮件主题格式为:工单提醒 - REF12345 - 待处理

  1. 先定位前缀"REF"的起始位置:
    indexOf(body('Parse_JSON')?['subject'], 'REF')
    
  2. 用substring提取(假设参考号长度为8,即"REF"+5位数字):
    substring(body('Parse_JSON')?['subject'], indexOf(body('Parse_JSON')?['subject'], 'REF'), 8)
    

场景2:参考号在固定分隔符之间

假设邮件主题格式为:【客户工单】编号:67890 | 已分配

  1. 定位分隔符的位置,计算起始点和长度:
    // 起始位置:跳过"编号:"(3个字符)
    add(indexOf(body('Parse_JSON')?['subject'], '编号:'), 3)
    // 结束位置:找到第二个分隔符" | "的位置
    indexOf(body('Parse_JSON')?['subject'], ' | ')
    // 最终提取表达式
    substring(
        body('Parse_JSON')?['subject'],
        add(indexOf(body('Parse_JSON')?['subject'], '编号:'), 3),
        sub(indexOf(body('Parse_JSON')?['subject'], ' | '), add(indexOf(body('Parse_JSON')?['subject'], '编号:'), 3))
    )
    

场景3:参考号长度不固定但有统一分隔符

假设邮件主题格式为:订单确认-REF987654-已发货
用split函数直接拆分主题,取对应位置的元素更简单:

split(body('Parse_JSON')?['subject'], '-')[1]

操作步骤

  1. 在你的Power Automate工作流中,在「Parse JSON」步骤之后、「SQL插入」步骤之前,添加一个Compose步骤
  2. 在Compose的「输入」框中粘贴上述对应场景的表达式
  3. 将Compose步骤的输出,作为SQL数据库中「参考号」列的传入值

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.01 13:09:56