正则表达式子 returns None

Regex sub returns None

所以我正在使用这个程序,它接受一个 JSON 映射器输入,然后继续从源中获取数据。 我们正在导入股票数据,但有时我们会收到 50+ 之类的信息。

另一位开发人员使用 jsonpath-ng 库制作了以下映射器,包括用于删除不需要的“+”字符的子程序,因为我们不需要这些。

{"quantity": "$..Stock.`sub(/\\+/, \)`", "article_code": "$..Barcode"}

我 运行 遇到的问题是,当我们收到 50+ 这样的数量时,它可以正常工作,它可以很好地将它转换为 50,但是当我们收到类似 3 的数量时,它会将其转换为None。我似乎无法找到一种方法来防止没有“+”的值被转换为 None.

有谁知道如何更改它以便在找到时删除“+”,如果找不到就让它保留而不是将其更改为 None?

出现 deliberate decision in jsonpath-ng,如果 sub 没有任何改变,该项目将转换为 None。我觉得这很令人费解。

作为一种解决方法,您可以在字符串末尾附加一个 +,然后 然后 将其重写为 sub,现在将始终修改它,不产生 None.