В настоящее время я пытаюсь пройтись по текстовому файлу, где мне нужно найти указанную текстовую строку c, а затем заменить строку текста, которая идет через несколько строк после этой текстовой строки. Вот пример текста:
<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
.
В этом конкретном c случае все останется прежним, но z="0.2"
будет изменено на z="-0.15"
. К сожалению, есть также много других вариантов MyObjectBuilder_
, все из которых должны остаться неизменными, поэтому я не могу просто найти / заменить z="0.2"
Промежуточные строки уникальны, поэтому они Пакетная замена не может быть выполнена, и в этом файле содержится более 1000 таких записей, поэтому их редактирование вручную, по меньшей мере, отнимает много времени.
Есть ли способ создать выражение поиска и замены или, возможно, какой-нибудь другой инструмент в Notepad ++, который позволил бы оптимизировать подобные вещи?