Удалить узел XML в Notepad++

У меня есть большой XML со структурой ниже. Теперь я хочу избавиться от узлов <tuv xml:lang="en-GB"><seg>CONTENT</seg></tuv>, чтобы для каждой единицы осталась только часть de-DE (<tuv xml:lang="de-DE"><seg>CONTENT</seg></tuv>). Есть ли способ сделать это с помощью Notepad++ или другого инструмента? Я не особо увлекаюсь кодированием, поэтому чем проще, тем лучше.

Что я имею:

<tu tuid="ID_0">
<tuv xml:lang="en-GB">
<seg>Hello!</seg>
</tuv>
<tuv xml:lang="de-DE">
<seg>Hallo!</seg>
</tuv>
</tu>
<tu tuid="ID_1">
<tuv xml:lang="en-GB">
<seg>This is a test content! :)</seg>
</tuv>
<tuv xml:lang="de-DE">
<seg>Das ist ein Testinhalt! :)</seg>
</tuv>
</tu>
<tu tuid="ID_2">
<tuv xml:lang="en-GB">
<seg>All your base are belong tu us ...</seg>
</tuv>
<tuv xml:lang="de-DE">
<seg>Och nö, echt jetzt?</seg>
</tuv>
</tu>

Что я хочу:

<tu tuid="ID_0">
<tuv xml:lang="de-DE">
<seg>Hallo!</seg>
</tuv>
</tu>
<tu tuid="ID_1">
<tuv xml:lang="de-DE">
<seg>Das ist ein Testinhalt! :)</seg>
</tuv>
</tu>
<tu tuid="ID_2">
<tuv xml:lang="de-DE">
<seg>Och nö, echt jetzt?</seg>
</tuv>
</tu>

person Robert Herzog    schedule 22.08.2012    source источник
comment
Это не имеет ничего общего с программированием, насколько я знаю... было бы лучше перенести этот вопрос на superuser.com, чтобы получить ваши ответы.   -  person code4life    schedule 22.08.2012
comment
Я получил решение, если кто-то когда-либо искал это: Ctrl+H (Заменить...) Что найти: ‹tuv xml:lang=en-GB›.*?‹/tuv› Режим поиска: регулярное выражение проверено : . соответствует новой строке   -  person Robert Herzog    schedule 23.08.2012


Ответы (1)


Это можно сделать с помощью поиска и поиска по регулярному выражению Notepad++.
Нажмите Ctrl+H, чтобы открыть Find/ Диалоговое окно "Заменить"

  • Найдите что : <tuv xml:lang="en-GB">\r\n.*\r\n.*\r\n
  • Заменить на: (оставьте пустым)
  • Режим поиска: Регулярное выражение
  • Нажмите Заменить все.
person Suresh Anbarasan    schedule 15.04.2015