我面临的问题是我在XML中有一个字符串的节点,代表HTML。 我需要削减该字符串,但是,当然,这可能导致在invalide HTML的标记(例如,如果我切字符串总是后30个字符我很容易失去闭元件等等)。 怎么办? 这似乎是非常困难的,因为我没有通过谷歌找到真正的帮助。XSLT:将字符串解析为XML节点集(concret:将HTML-String转换为节点集)?
我的想法至今:以“分析字符串”和正则表达式选择节点和内容,并把它们写上课XML元素节点。 但是我遇到很大的问题来处理所有情况,特别是嵌套节点。
有人有一些想法吗?
FYI:我的记事本:
正则表达式:抓住第一个标签
第一个节点的读标记名
认沽标记名正则表达式和搜索整个标签,还可以选择字符串的其余部分(去请稍后再试)
查看完整内容:更多标签?是: - >步骤1中,无: - >步骤5
写入标签作为节点元件
字符串取其余 - >步骤1
下面是XML的文档:
header
A little article.Hereit's already done!
]]>
我想要做什么:
在我有一个字符串(HTML),只是想输出字符的特殊金额(例如,前25)。当我这样做只是在弦上,我得到这样的结果:
"
header
A little article"
在下一步我把这个字符串的HTML输出,但在这一点上,我获得合法的标记,因为
-Tag不关闭。
所以我的第一种方法是:解析这个字符串以获取每个标记的XML-Nodes,然后遍历每个节点,编写一个xml元素(以确保最终标记将有效)并复制尽可能多的字符,直到达到极限,在这个例子中将是25个字符。
-01-03
K.S.
+0
您可能希望在您的问题中包含您的XML文档。 –
-01-03 09:50:48
+0
你对输入XML有任何控制吗?如果你没有使用CDATA标签,这可能是可能的。使用CDATA标记,HTML字符串仅被视为文本的通用字符串,并且不容易在HTML标记处进行分析。删除CDATA标签,然后您可以开始匹配标签... –
-01-03 10:51:43
+0
请编辑您的问题并提供转换所需的结果。目前还不清楚你想要“删除”哪个字符串。 –
-01-03 12:56:39
xml html 转化为字符串 XSLT:将字符串解析为XML节点集(concret:将HTML-String转换为节点集)?...