Sample code for 30+ languages & platforms
Classic ASP

Demonstrate XML SearchForTag2

Demonstrates how to use SearchForTag2.

Chilkat Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

set xml = Server.CreateObject("Chilkat.Xml")

' Load the following XML:

' 	<Test>
' 	    <testchild1>
' 	        test
' 	    </testchild1>
' 	    <testchild1>
' 	        test1
' 	    </testchild1>
' 	    <testchild1>
' 	        test2
' 	    </testchild1>
' 	    <testchild1>
' 	        test3
' 	    </testchild1>
' 	    <testchild1>
' 	        test4
' 	    </testchild1>
' 	    <testchild1>
' 	        test5
' 	    </testchild1>
' 	    <testchild1>
' 	        test6
' 	    </testchild1>
' 	</Test>

success = xml.LoadXml("<Test><testchild1>test</testchild1><testchild1>test1</testchild1><testchild1>test2</testchild1><testchild1>test3</testchild1><testchild1>test4</testchild1><testchild1>test5</testchild1><testchild1>test6</testchild1></Test>")

i = 0
' xmlSearch is a Chilkat.Xml
Set xmlSearch = xml.GetRoot()
' afterPtr is a Chilkat.Xml
Set afterPtr = xml.GetRoot()

' Alway begin the search from the root.
Do While xmlSearch.SearchForTag2(afterPtr,"testchild1")
    ' If successful, xmlSearch now points to the found element.
    i = i + 1

    ' Set afterPtr = xmlSearch (so we find the next match after the one we just found)
    ' Rest xmlSearch to the root of the XML tree to be searched.
    Response.Write "<pre>" & Server.HTMLEncode( i & ": " & xmlSearch.Content) & "</pre>"
    ' pTemp is a Chilkat.Xml
    Set pTemp = afterPtr
    ' afterPtr is a Chilkat.Xml
    Set afterPtr = xmlSearch
    pTemp.GetRoot2 
    ' xmlSearch is a Chilkat.Xml
    Set xmlSearch = pTemp
Loop

Response.Write "<pre>" & Server.HTMLEncode( "----") & "</pre>"

' A better way:
set sbState = Server.CreateObject("Chilkat.StringBuilder")
i = 0
Do While xml.NextInTraversal2(sbState) <> 0
    If (xml.TagEquals("testchild1") = 1) Then
        Response.Write "<pre>" & Server.HTMLEncode( i & ": " & xml.Content) & "</pre>"
        i = i + 1
    End If

Loop
xml.GetRoot2 

%>
</body>
</html>