我在一个目录中有“几个”(百)个json文件,它在任意树结构中包含大量不同类型的json对象。许多(但不是全部)对象具有绝对画布位置,如下所示:
"position":{"x":880.8230590820313,"y":437.6084899902344,"z":0.0}
现在我想循环遍历所有这些文件并将所有对象中的“y”位置增加一个固定的数量,比如24。
为了让我的生活变得轻松而不必遍历树形结构,我想像这样使用powershell regexp:
$content = Get-Content -path "SimpleSample.json" // TODO: Loop through directory
$content -Replace '"position":\{"x":([\d.]*),"y":(\d*).', '"position":\{"x":$1,"y":($2+24).' | Out-File -Encoding "UTF8" "SimpleSampleOut.json"
结果甚至“差不多”我想要的东西:
"position":\{"x":880.8230590820313,"y":(437+24).6084899902344,"z":0.0}
当然要获得有效的JSON,我需要在结果文件中计算结果,而不是计算结果。我怎样才能做到这一点?