Дорогая стека переполнения стека,
У меня довольно сложный RegEx для создания, по крайней мере, для меня; -).
Цель: поиск файла XML (на самом деле XLIFF) для теги, в которых отсутствует атрибут утвержден = "да", и добавлен тег с атрибутом состояния = "новый". Одновременно удаляем текст, который может присутствовать в теге.
Вот пример:
Найдите это:
<trans-unit id="2c5b6ff1">
<source xml:lang="de-de">Fehler im Aufgabe</source>
<target xml:lang="en-us">Fehler im Aufgabe</target>
</trans-unit>
и создайте этот вывод как замена:
<trans-unit id="2c5b6ff1" approved="no">
<source xml:lang="de-de">Fehler im Aufgabe</source>
<target state="new" xml:lang="en-us"></target>
</trans-unit>
Я не хочу находить структуры, в которых уже установлено утвержденное значение:
<trans-unit id="77d29d58-ea84-47b0-a415-1de68425fae0" approved="yes">
<source xml:lang="de-de">Frequenzumrichter in Störung</source>
<target xml:lang="en-us" state="translated">Frequency inverter on disturbance</target>
</trans-unit>
I go до сих пор, которое не работает должным образом ,
(<trans-unit(?!.*?approved=\"yes\".*?\2)[^>]*?)(/?>\r\n <source xml:lang=\"de-de\">(.*?)<\/source>\r\n<\/trans-unit>) <target xml:lang=\"en-us\">(.*?)<\/target>\r\n <\/trans-unit>”
Что мне нужно сделать по-другому?
Ваша помощь очень ценится. Спасибо мил!