【发布时间】:2025-12-10 21:25:02
【问题描述】:
我有以下 xml 数据
<UserStaging>
<NeuroRKStaging>
<Stage Type="REM" Start="0" />
<Stage Type="Stage3" Start="150" />
<Stage Type="Movement" Start="3030" />
<Stage Type="Wake" Start="3150" />
<Stage Type="Stage2" Start="4680" />
<Stage Type="Stage3" Start="5340" />
<Stage Type="Movement" Start="6090" />
<Stage Type="Wake" Start="6480" />
<Stage Type="Stage1" Start="9330" />
<Stage Type="Stage3" Start="10290" />
</NeuroRKStaging>
</UserStaging>
我必须把它变成以下格式:
REM 150
N2 3150
Wake 4680
N2 5340
N3 6480
Wake 9330
N1 10290
N3 50000
有五种“类型”:
Stage1 transforms to N1
Stage2 transforms to N2
Stage3 transforms to N3
REM remains REM
Wake remains Wake
Type="Movement" 的所有行都应该被删除,然后才应该转换数据。每个后续阶段的“开始”将是它之前的“类型”后面的数字。对于最后一个“类型”(在本例 N3 中),数字应为 50000
xsl 样式表会怎样做呢?我最多可以使用 XSLT 版本 3。感谢您的帮助!
【问题讨论】:
-
本例中的行“N2 3150”应为“N3 3150”。抱歉打错了
-
REM 150 在你的例子中如何?
-
请再次检查您的问题,我认为您放错了数据:
-
我试过但由于不清楚我无法达到预期的输出。请查看链接,希望您能有所了解:xsltfiddle.liberty-development.net/pPzifpa
-
这似乎与您之前的问题非常相似:*.com/questions/54850380/xml-parsing-with-xslt 我认为您应该能够自己进行必要的调整。
标签: xml parsing xslt xml-parsing