1
6
基本递归(未测试,但我认为可以):
…有效,因为xpathnodeiterator的当前属性也是xpathnavigator。显然,您需要扩展这个功能,以便将数据推送到字典中,或者跟踪深度等。 |
2
1
当xpath(至少对我来说)是自然选择时,为什么要使用regex呢?这就是XSLT应该实现的… |
3
0
你使用regex有什么特别的原因吗?是否尝试使用xpath?下面是一些如何使用xpath的示例。 http://www.w3schools.com/XPath/xpath_examples.asp |
4
0
使用xpath,//menuitem[@navigateurl]/@navigateurl。 此xpath将获取具有naviagate url属性的所有菜单项,并返回navigateurl值的节点列表(xpath 1.0)或序列(xpath 2.0)。通过使用navigateURL属性谓词,确保只获取叶菜单项。 |
5
0
我的帖子提出了一个特定的需求,与OP的询问有关,但没有具体的OP的要求。当我需要时,我喜欢regex和递归,但在本例中,我认为op的查询目标是学习一种生成正确格式的XML输出的方法,我在下面提供的是在没有大量上下文源代码开发的情况下(为什么要重新设计轮子?)在.NET 2.0框架的后面支持和。 在我的工作中,我经常以支持现代政府制度而告终。这些系统通常仍然只支持部署系统上的2.0版本——主要是出于安全考虑。2.0框架缺少最新.NET版本的一些优美输出,特别是在涉及XML对象的情况下。下面设置的完全有效的方法对我来说是很有价值和节省时间的,我将它提供给那些为政府利益服务的不可见的开发人员同志。 此外,您还可以使用LinqBridge库来提供有限的Linq支持(从3.5 Service Pack到3.5 Service Pack,实际上内部自评估为2.0,因此LinqBridge的构造是为了弥补特定的差距(在使用Visual Studio 2008开发为2.0 Build时限制了Linq查询支持)。但是,请注意,目前不支持将LinqBridge转发到Visual Studio 2008。 为了最大限度地减少包发布大小,并与我提供服务的组织要求保持兼容,我避免使用关联的非XML库(如regex)来解析XML并坚持使用标准的XML对象。尤其是旧的xml*前缀对象与更现代(更灵活)的x*前缀对象… 下面,我提供了许多安全、简单、高效的方法,可以从各种标准2.0XML*对象生成格式化的XML。还要注意,这些函数的工作马实际上是xpathnavigator类,而不是它的兄弟类。 下面是一个调用示例方法的C代码片段:
下面是示例方法,其中一个方法很可能满足您的XML格式需求:
享受。^ ^ 请注意,在以后的框架版本和使用较新的Xelement对象时,您可以for each()Xelement的节点和.toString()的每个结果自动进行正确的格式设置。就像我上面说的,更优雅了:)。 |
6
0
如何使用Java中的正则表达式递归读取XML文档
您将得到的输出:日期是[4137361787,8566944014,8566944024] |
Pjoern · 在XSLT中包装没有属性的节点组 6 年前 |
user2093335 · XSLT:基于现有属性值替换属性值 6 年前 |
Leth · 字符串串联functoid不将映射值返回到目标记录 6 年前 |
shawn · XSLT 3.0在应用模板中使用变量进行动态选择? 6 年前 |
user9238790 · 将XML转换为数据帧 6 年前 |
Vanessa · xsl:当两个节点相等时,显示第一个节点的子节点 6 年前 |
Adi · 并行读取大型XSLT字符串 6 年前 |
Brian Arthur · XSLT从另一个上下文获取信息 6 年前 |