我正在尝试从节点中分割文本<extra>text1|text2|text3|text4</extra>
分成四个部分“|”作为分隔符并重建4个新节点,如下所示。
<g:test1>text1</g:test1>
<g:test2>text2</g:test2>
<g:test3>text3</g:test3>
<g:test4>text4</g:test4>
这是我的代码,显然不起作用,但应该解释我想要做什么。
<%
Dim objXML, x
Set objXML = CreateObject("MSXML2.DOMDocument")
objXML.async = False
objXML.setProperty "ServerHTTPRequest", True
objXML.Load "http://www.thesite.com/v/myxml.xml"
objXML.setProperty "SelectionLanguage", "XPath"
Dim xmldoc: set xmldoc = CreateObject("MSXML2.DomDocument")
xmldoc.async = false
Dim instruction
Set instruction = xmldoc.createProcessingInstruction("xml", "version=""1.0"" encoding=""UTF-8"" standalone=""yes""")
xmldoc.appendChild instruction
Dim rss: set rss = xmldoc.createElement("rss")
xmldoc.appendChild rss
Dim itemNode2: Set itemNode2 = xmldoc.selectSingleNode(".//rss")
Dim name: Set name = xmldoc.createAttribute("xmlns:g")
name.Value = "http://base.google.com/ns/1.0"
itemNode2.attributes.setNamedItem(name)
Dim itemNode: Set itemNode = xmldoc.selectSingleNode(".//rss")
Dim version: Set version = xmldoc.createAttribute("version")
version.Value = "2.0"
itemNode.attributes.setNamedItem(version)
Dim channel: set channel = xmldoc.createElement("channel")
rss.appendChild channel
For Each x In objXML.documentElement.selectNodes(".//SAVED_EXPORT")
Dim item: set item = xmldoc.createElement("item")
channel.appendChild item
Dim str1: Set str1 = x.selectSingleNode("extra")
Dim gstrarray
gstrarray = split(str1.text,"|")
Dim gstr1: set gstr1 = xmldoc.createElement("g:test1")
gstr1.text =gstrarry(0)
item.appendChild gstr1
Dim gstr2: set gstr2 = xmldoc.createElement("g:test2")
gstr2.text =gstrarry(1)
item.appendChild gstr2
Dim gstr3: set gstr3 = xmldoc.createElement("g:test3")
gstr3.text =gstrarry(2)
item.appendChild gstr3
Dim gstr4: set gstr4 = xmldoc.createElement("g:test4")
gstr4.text =gstrarry(3)
item.appendChild gstr4
Next
Response.Write xmldoc.xml
%>
没有一个split()
XPath 1.0 中的(或等效)函数.
有一个tokenize() http://www.w3.org/TR/xpath-functions/#func-tokenizeXPath 2.0 中的函数。
可以使用 XSLT 1.0 实现拆分功能——有几个问题好的答案 https://stackoverflow.com/questions/7425071/split-function-in-xslt-1-0/7425600#7425600在 xslt 标签中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)