XPathNavigator.Matches Metodo

Definizione

Determina se il nodo corrente corrisponde all'espressione System.Xml.XPath specificata.

Overload

Matches(String)

Determina se il nodo corrente corrisponde all'espressione XPath specificata.

Matches(XPathExpression)

Determina se il nodo corrente corrisponde all'espressione XPathExpression specificata.

Matches(String)

Determina se il nodo corrente corrisponde all'espressione XPath specificata.

public:
 virtual bool Matches(System::String ^ xpath);
public virtual bool Matches (string xpath);
abstract member Matches : string -> bool
override this.Matches : string -> bool
Public Overridable Function Matches (xpath As String) As Boolean

Parametri

xpath
String

Espressione XPath.

Restituisce

Boolean

true se il nodo corrente corrisponde all'espressione XPath specificata; in caso contrario, restituisce false.

Eccezioni

L'espressione XPath non può essere valutata.

L’espressione XPath non è valida.

Esempio

Per un esempio del Matches metodo , vedere il XPathNavigator.Matches metodo .

Commenti

Questo metodo non ha alcun effetto sullo stato dell'oggetto XPathNavigator.

Si applica a

Matches(XPathExpression)

Determina se il nodo corrente corrisponde all'espressione XPathExpression specificata.

public:
 virtual bool Matches(System::Xml::XPath::XPathExpression ^ expr);
public virtual bool Matches (System.Xml.XPath.XPathExpression expr);
abstract member Matches : System.Xml.XPath.XPathExpression -> bool
override this.Matches : System.Xml.XPath.XPathExpression -> bool
Public Overridable Function Matches (expr As XPathExpression) As Boolean

Parametri

expr
XPathExpression

Oggetto XPathExpression contenente l'espressione XPath compilata.

Restituisce

Boolean

true se il nodo corrente corrisponde a XPathExpression; in caso contrario, false.

Eccezioni

L'espressione XPath non può essere valutata.

L’espressione XPath non è valida.

Esempio

Nell'esempio seguente vengono visualizzati i titoli di tutti i romanzi.

XPathDocument^ document = gcnew XPathDocument("books.xml");
XPathNavigator^ navigator = document->CreateNavigator();

// Select all book nodes.
XPathNodeIterator^ nodes = navigator->SelectDescendants("book", "", false);

// Select all book nodes that have the matching attribute value.
XPathExpression^ expr = navigator->Compile("book[@genre='novel']");
while (nodes->MoveNext())
{
    XPathNavigator^ navigator2 = nodes->Current->Clone();
    if (navigator2->Matches(expr))
    {
        navigator2->MoveToFirstChild();
        Console::WriteLine("Book title:  {0}", navigator2->Value);
    }
}
XPathDocument document = new XPathDocument("books.xml");
XPathNavigator navigator = document.CreateNavigator();

// Select all book nodes.
XPathNodeIterator nodes = navigator.SelectDescendants("book", "", false);

// Select all book nodes that have the matching attribute value.
XPathExpression expr = navigator.Compile("book[@genre='novel']");
while (nodes.MoveNext())
{
    XPathNavigator navigator2 = nodes.Current.Clone();
    if (navigator2.Matches(expr))
    {
        navigator2.MoveToFirstChild();
        Console.WriteLine("Book title:  {0}", navigator2.Value);
    }
}
Dim document As XPathDocument = New XPathDocument("books.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

' Select all book nodes.
Dim nodes As XPathNodeIterator = navigator.SelectDescendants("book", "", False)

' Select all book nodes that have the matching attribute value.
Dim expr As XPathExpression = navigator.Compile("book[@genre='novel']")
While nodes.MoveNext()
    Dim navigator2 As XPathNavigator = nodes.Current.Clone()
    If navigator2.Matches(expr) Then
        navigator2.MoveToFirstChild()
        Console.WriteLine("Book title:  {0}", navigator2.Value)
    End If
End While

Nell'esempio viene usato il file , books.xml, come input.

<?xml version="1.0" encoding="utf-8" ?>   
<bookstore>  
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">  
        <title>The Autobiography of Benjamin Franklin</title>  
        <author>  
            <first-name>Benjamin</first-name>  
            <last-name>Franklin</last-name>  
        </author>  
        <price>8.99</price>  
    </book>  
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">  
        <title>The Confidence Man</title>  
        <author>  
            <first-name>Herman</first-name>  
            <last-name>Melville</last-name>  
        </author>  
        <price>11.99</price>  
    </book>  
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">  
        <title>The Gorgias</title>  
        <author>  
            <name>Plato</name>  
        </author>  
        <price>9.99</price>  
    </book>  
</bookstore>  

Commenti

Questo metodo non ha alcun effetto sullo stato dell'oggetto XPathNavigator. Questo metodo è identico al metodo , ad eccezione del XPathNavigator.Matches fatto che viene specificato un XPathExpression oggetto contenente l'espressione XPath compilata, anziché un'espressione StringXPath .

Si applica a