Skip to main content
 首页 » 编程设计

python之正则表达式子返回无

2024年09月07日32exmyth

所以我正在使用这个程序,它接受一个 JSON 映射器输入,然后继续从源生成数据。 我们正在导入库存数据,但有时我们会收到 50 多个数据。

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

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

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

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

请您参考如下方法:

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

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