【发布时间】:2020-08-03 00:50:34
【问题描述】:
我目前正在尝试通过一个文本文件工作,我需要在其中找到一个特定的文本字符串,然后替换该文本字符串之后几行的文本行。以下是文本示例:
<MyObjectBuilder_CubeBlock xsi:type="MyObjectBuilder_Conveyor">
<SubtypeName>LargeBlockConveyor</SubtypeName>
<EntityId>111664082437655291</EntityId>
<Min x="9" y="30" z="7" />
<BlockOrientation Forward="Right" Up="Up" />
<ColorMaskHSV x="0" y="-0.8" z="0.2" />
</MyObjectBuilder_CubeBlock>
在这种情况下,我需要搜索字符串MyObjectBuilder_Conveyor,然后我需要实际编辑字符串ColorMaskHSV x="0" y="-0.8" z="0.2"。
期望的结果是MyObjectBuilder_Conveyor 的每个实例中的所有内容都将保持不变,唯一的更改是ColorMAskHSV 行。
在这种特定情况下,一切都将保持不变,但 z="0.2" 将更改为 z="-0.15"。不幸的是,MyObjectBuilder_ 还有许多其他变体,所有这些都需要保持不变,所以我不能只对z="0.2" 进行查找/替换
中间的行是唯一的,因此它们不能被批量替换,并且文件中有超过 1000 个这样的条目,因此手动编辑它们至少可以说是耗时的。
有没有一种方法可以创建查找和替换表达式,或者可能是 Notepad++ 中的其他工具,可以简化这种事情?
【问题讨论】:
-
您的预期结果是什么?
-
期望的结果是列出的文本中的所有内容(“MyObjectBuilder_Conveyor”的每个实例的所有唯一文本/值)都将保持不变,唯一的变化是 ColorMAskHSV 行。在这种特定情况下,一切都将保持不变,但 z="0.2" 将更改为 z="-0.15"。不幸的是,“MyObjectBuilder_”还有许多其他变体,所有这些都需要保持不变,所以我不能只对“z="0.2"”进行查找/替换。