如果 Power Apps 中的 json 中存在整数值,我无法将 json 绑定到集合

I can't bind json to the collection if an integer value exists in json in Power Apps

我从 power automate 获得了 JSON 格式的文本。 JSON如下:

{"PurchaseOrderNumber":"PO00003871","LineNumber":1,"OrderedPurchaseQuantity":10}

我尝试将其绑定到如下集合

ClearCollect(_purchlinesData, 
      MatchAll(GetPurchLineByPurchId.Run(_selectedPurcOrder.'Purchase order', _token.value).value, 
         "\{""ItemNumber"":""(?<ItemNumber>[^""]*)"",""PurchaseOrderNumber"":""(?<PurchaseOrderNumber>[^""]*),""OrderedPurchaseQuantity"":""(?<OrderedPurchaseQuantity>[^""]*)""\}"))

但是没用。但是如果我删除 'OrderedPurchaseQuantity' 的整数值,它就会起作用。

如何用整型变量解析这个 JSON?

由于 OrderedPurchaseQuantity 是一个整数,如果您删除 MatchAll() 语句中值周围的双引号会怎样?

由此... ""OrderedPurchaseQuantity"":""(?<OrderedPurchaseQuantity>[^""]*)""

为此... ""OrderedPurchaseQuantity"":(?<OrderedPurchaseQuantity>[^""]*)

因为不会有值是字符串的时候,所以我可以明白为什么 MatchAll() 会在这里失败。

如果流中的答案始终按此顺序具有属性“PurchaseOrderNumber”、“LineNumber”和“OrderedPurchaseQuantity”,那么如果您想使用正则表达式,则需要按相同的顺序排列它们解析这个答案:

ClearCollect(_purchlinesData, 
    Match(
        GetPurchLineByPurchId.Run(_selectedPurcOrder.'Purchase order', _token.value).value,
        "\{""PurchaseOrderNumber"":""(?<poNumber>[^""]*)"",""LineNumber"":(?<lineNumber>\d+),""OrderedPurchaseQuantity"":(?<purchaseQuantity>\d+)"))