我有一个 XML 文件,其中包含数字等内容。就像是:
<things>
<a name="cat">
<vecs>(100,20),(200,40),(50,85)</vecs>
</a>
<b name="dog">
<vecs>(0,10),(5,75)</vecs>
<ratio>85.5</ratio>
</b>
... many more elements and numbers ...
</things>
不幸的是<vecs>
,我文件中包含元素的所有数字都比应有的大 4 倍。我需要将它们全部乘以 0.25。中的数字<ratio>
和其他元素都很好。例如,<vecs>
上面的第一行应该是:
<vecs>(25,5),(50,10),(12.5,21.25)</vecs>
是否有一种方便的解决方案(例如 UNIX 命令行工具、bash 脚本等)来处理文件,以便我可以找到存在于特定上下文中的所有数字(例如<vecs>
和之间</vecs>
),对它们执行数学运算,以及用操作的结果替换每个实例中的现有数字文本?
不,我不是要你写一个完整的程序来详细解决这个特定的问题。我想知道是否有用于此类目的的现有工具或可以完成这项工作的现有工具的巧妙组合。