因此,我正在使用该程序,该程序接受JSON映射器输入,然后继续从源中获取数据。 我们正在导入库存数据,但是有时我们会收到类似50+的信息。
另一个开发人员使用jsonpath-ng库制作了以下映射器,其中包括一个删除不需要的'+'字符的子程序,因为我们不需要这些。
{"quantity": "$..Stock.`sub(/\\\\+/, \\)`", "article_code": "$..Barcode"}
我遇到的问题是,当我们收到50+的数量时,它可以正常工作,将其转换为50很好,但是当我们收到3,则将其转换为None。我似乎无法找到一种方法来防止将没有'+'的值转换为None。
有人知道如何更改它,以便在找到后删除一个“ +”号;如果找不到,则将其保留,而不是将其更改为“无”?
答案 0 :(得分:1)
似乎出现deliberate decision in jsonpath-ng,如果sub
不做任何更改,则该项目将转换为None
。我觉得这很令人困惑。
作为一种解决方法,您可以在字符串的末尾附加一个+
,然后用sub
重写然后,它现在将始终对其进行修改,而不产生{ {1}}。