这是对“选择当前元素和当前元素的下一个元素之间的所有元素”提出的后续问题。即使我不确定创建一个新问题是否是我这样做的正确方式。因为最初的问题得到了回答,但后来又改变了。所以在我看来,改变的问题是开放的。此外,我认为如果更改后的问题适合答案,则应将其放回统计数据中。
问题是如何创建分层 xml 形式的“平面”xml,如书籍描述。
输入 xml 类似于
<root>
<heading_1>Section 1</heading_1>
<para>...</para>
<list_1>...</list_1>
<heading_2>Section 1.1</heading_2>
<para>...</para>
<heading_3>Section 1.1.1</heading_3>
<para>...</para>
<list_1>...</list_1>
<heading_2>Section 1.2</heading_2>
<para>...</para>
<footnote>...</footnote>
<heading_1>Section 2</heading_1>
<para>...</para>
<list_1>...</list_1>
<heading_2>Section 2.1</heading_2>
<para>...</para>
<list_1>...</list_1>
<list_2>...</list_2>
<heading_3>Seciton 2.1.1</heading_3>
<para>...</para>
<heading_2>Section 2.2</heading_2>
<para>...</para>
<footnote>...</footnote>
</root>
每个都<heading_*>
应该被解释为<section>
预期输出 xml 的开头。
<section>
<title>Section 1</title>
<para>...</para>
<list_1>...</list_1>
<section>
<title>Section 1.1</title>
<para>...</para>
<section>
<title>Section 1.1.1</title>
<para>...</para>
<list_1>...</list_1>
</section>
</section>
<section>
<title>Section 1.2</title>
<para>...</para>
<footnote>...</footnote>
</section>
</section>
<section>
<title>Section 2</title>
<para>...</para>
<list_1>...</list_1>
<section>
<title>Section 2.1</title>
<para>...</para>
<list_1>...</list_1>
<list_2>...</list_2>
<section>
<title>Section 2.1.1</title>
<para>...</para>
</section>
</section>
<section>
<title>Section 2.2</title>
<para>...</para>
<footnote>...</footnote>
</section>
</section>
我还尝试了一段时间根据@JLRishe的原始解决方案找到解决方案 。所以我找到了一个,并喜欢把它放在这里作为一种可能性的答案。我希望有一个更易于理解的解决方案。