我有以下 XML:
<test>
<something name="test">
<todo>Something is here!</todo>
</something>
<mytag id="myID">!!!!</mytag>
<todo>Hello, world</todo>
</test>
我需要替换具有id="myID"
并获得的标签的内容:
<test>
<something name="test">
<todo>Something is here!</todo>
</something>
<mytag id="myID">**MY NEW STRING IS HERE**</mytag>
<todo>Hello, world</todo>
</test>
有没有标准的方法来实现它?我知道xmerl_xs是一种 Erlang 的 XML 转换方式。但它不能用来解决我的问题。
而且我只设法<mytag id="myID">**MY NEW STRING IS HERE**</mytag>
使用 Xmerl。我的代码:
{ RootEl, _Rest } = xmerl_scan:string(Template),
[Match|_] = xmerl_xpath:string("//*[@id='myID']", RootEl),
% Pack new content to the container
Result = Match#xmlElement { content="**MY NEW STRING IS HERE**" }
只有非标准库(Sablotron等)才有可能吗?