VB处理XML(忽略节点大小写)

VB处理XML(忽略节点大小写),第1张

概述'引入Microsoft XML v4.0''有如下示例:''一般处理:'把得到的字符串全部转为大写,处理这样可以得到。但是里面的值也变成大写了。Command1_Click'可以得到Code的集合,但这种方法会把节点里面的值也处理为大写,如果对里面的内容业务上大小写敏感的话就不适用了。'用Command2_Click可以解决这个问题Private Sub Command1_C
'引入Microsoft XML v4.0''有如下示例:''一般处理:'把得到的字符串全部转为大写,处理这样可以得到。但是里面的值也变成大写了。Command1_Click'可以得到Code的集合,但这种方法会把节点里面的值也处理为大写,如果对里面的内容业务上大小写敏感的话就不适用了。'用Command2_Click可以解决这个问题Private Sub Command1_Click()            Dim objDomdocument As DOMdocument    Set objDomdocument = New DOMdocument    '因传回来不知道所有字母的大小写所以如下处理    objDomdocument.LoadXml UCase(getString)    Dim xmlNodeList As IXMLDOMNodeList    Set xmlNodeList = objDomdocument.selectNodes(UCase("Summary/CodeList/Code"))        DeBUG.Print xmlNodeList.lengthEnd SubPrivate Function getString() As String        getString = "<Summary>" & "<CodeList>" & "<Code></Code>" & "<Code></Code>" & "<Code></Code>" & "</CodeList>" & "</Summary>"End FunctionPrivate Sub Command2_Click()        '下面的方法可以解决    Dim objDomdocument As DOMdocument    Set objDomdocument = New DOMdocument        objDomdocument.LoadXml getString            objDomdocument.SetProperty "SelectionLanguage","XPath"    Dim xmlNodeList As IXMLDOMNodeList    '用下面的语句在不知道节点大小写的情况下得到想要的节点       '处理一下上面的这句代码,转为    Set xmlNodeList = objDomdocument.selectNodes(TransToXML4("Summary","CodeList","Code"))        DeBUG.Print xmlNodeList.lengthEnd SubPublic Function TransToXML4(strNodeLevel1 As String,_                            Optional strNodeLevel2 As String,_                            Optional strNodeLevel3 As String,_                            Optional strNodeLevel4 As String) As String         Dim strTemp As String            strTemp = "*[translate(name(),'ABCDEFGHIJKLMnopQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz') = '" & LCase$(strNodeLevel1) & "']"                If Len(strNodeLevel2) > 0 Then            strTemp = strTemp & "/*[translate(name(),'abcdefghijklmnopqrstuvwxyz') = '" & LCase$(strNodeLevel2) & "']"        End If        If Len(strNodeLevel3) > 0 Then                    strTemp = strTemp & "/*[translate(name(),'abcdefghijklmnopqrstuvwxyz') = '" & LCase$(strNodeLevel3) & "']"        End If                If Len(strNodeLevel4) > 0 Then                    strTemp = strTemp & "/*[translate(name(),'abcdefghijklmnopqrstuvwxyz') = '" & LCase$(strNodeLevel4) & "']"        End If                TransToXML4 = strTemp        ' strRecordDate = objDomdocument.selectSingleNode("*[translate(name(),'abcdefghijklmnopqrstuvwxyz') = 'salesman']/*[translate(name(),'abcdefghijklmnopqrstuvwxyz') = 'recorddate']").TextEnd Function
总结

以上是内存溢出为你收集整理的VB处理XML(忽略节点大小写)全部内容,希望文章能够帮你解决VB处理XML(忽略节点大小写)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1273310.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存