HI,
I am using VB.NET to read an XHTML file. I need my program to find every element within the XML structure which has the "class" attribute set to a specific value.
IE: I need an array (or similar list) of all elements from the document which contain class="mytag".
There is a list of several values I need to detect, all of which start with the same word 'mytag' followed by another word - so using a "contains" function seems sensible here.
Any suggestions of ways I can parse out these attributes would be appreciated. Cheers.
If you are OK with LINQ try XML literals,
Like this:
Use the following XPath expression with the
SelectNodes
function of anXmlDocument
object:This expression will select any XHTML element whose
class
attribute's value is equal to"mytag"
.If you want to find all elements whose
class
attribute contains a particular string, the XPath functioncontains
will help you:The
SelectNodes
function returns a list of XML nodes from theXmlDocument
corresponding on the XPath expression passed to it as a parameter. Based on your description, it's exactly what you need.