Byta namn på element i en xml fil
5 svar · 484 visningar · startad av Pedda
Japp, det har jag.
Ett gäng alternativ...
1. Vanlig strängersättning i filen/strängen.
2. Transformera om XML:en med XSL
3. Gör en egen ärvd XmlReader och byt ut namnet i en override.
4. Läs igenom dokumentet med DOM (XmlDocument) och byt ut elementen (ta bort de gamla, stoppa in nya och lägg innehållet från de gamla i de nya)
Hade tänkt använda punkt 4, men hittade inga bra exempel på hur det går till så det blir nog punkt 1 jag kommer använda.
Nu har det tillkommit lite mer som behöver ändras i xml filen så jag behöver hjälp med lite regex också. (Måste ta tag i regex och lära mig det ordentligt nån gång)
Regex som jag behöver
hitta alla:
<text><z-betoning z-bvariant = "5">lite text</z-betoning>lite text.</text>
och ersätta text elementet med namnet obtext och wrappa allt med ett nytt element som heter obs.
Du skulle resultatet alltså bli så här:
<obs><obstext><z-betoning z-bvariant = "5">lite text</z-betoning>lite text.</obstext></obs>
Regex är inte så lyckat för XML-manipulering. För ovanstående ändamål skulle jag använda XSL.
