使用正则表达式删除一段字符串(JSON 字符串)

本文关键字:字符串 JSON 一段 正则表达式 删除 | 更新日期: 2023-09-27 17:56:11

可能的重复项:
在反序列化之前从我的 JSON 中删除奇怪的隐藏追逐者

我有一些 JSON,我需要先删除其中一个元素,然后才能反序列化它。

我有一些不好的数据进入我的系统,我需要将其删除,这不是最好的解决方案,但这是紧急情况。

所以我正在寻找从我的 JSON 中删除一个属性。

下面是一个示例:

{
 "UDF4" : "",
 "ProductID" : 0,
 "Dimensions" : "",
 "weight" : 0,
 "Category" : "",
 "OrderID" : 0,
 "ManufacturerID" : 439,
 "CatalogCode" : "BARB",
 "ItemID" : "BARB13HIV",
 "Description" : "BARB13HIV",
 "BasePrice" : 0,
 "OrderItemID" : 0,
 "Price" : 44,
 "UDF5" : "�65",
 "UDF1" : "13HIV",
 "Qty" : 3,
 "UPC" : "BARB13HIV",
 "DiscountValue" : 0,
 "Cubes" : 0,
 "CatalogName" : "BARBARA COSGROVE LAMPS",
 "UDF2" : "",
 "ItemName" : "13'" Painted parchment ivory",
 "ModifierListID" : 0,
 "UnitOfMeasure" : "",
 "SortOrder" : 36,
 "SubTotal" : 132,
 "PhotoName" : "barb-13hiv",
 "OverrridePrice" : 0,
 "UDF3" : "",
 "AdditionalImageCount" : 0,
 "OrderGUID" : "3DFB932C-2F88-4C44-9417-251EABE1B863",
 "CompleteItemID" : "BARB13HIV",
 "PiecesBox" : 0,
 "SalesRepID" : 0,
 "Source" : "",
 "HasLineItemDiscount" : 0}

我需要删除此字符串的 UDF5 部分,同时保持 JSON 不变 - UDF 的值是可变的。

使用正则表达式删除一段字符串(JSON 字符串)

假设我可以依赖您上面显示的格式,并且它是正在运行的每个正则表达式之一,这可以像类似这样简单地完成

(['S's]*'"])'"UDF5'" : '"['S's]*?'",(['S's]*)

使用反向引用$1$2引用 UDF5 字段之前和之后的部件以写回。

如果那里有一个换行符要删除,我现在不这样做。这可能会更好 - 如果其他人有时间更正或提供额外的答案。但为了让您获得紧急修复,我希望这有所帮助。