XPathNavigator.Matches 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
현재 노드가 지정된 System.Xml.XPath 식과 일치하는지 여부를 확인합니다.
오버로드
Matches(String) |
현재 노드가 지정된 XPath 식과 일치하는지를 확인합니다. |
Matches(XPathExpression) |
현재 노드가 지정된 XPathExpression과 일치하는지 확인합니다. |
Matches(String)
현재 노드가 지정된 XPath 식과 일치하는지를 확인합니다.
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
매개 변수
- xpath
- String
XPath 식입니다.
반환
현재 노드가 지정된 XPath 식과 일치하면 true
이고, 그렇지 않으면 false
입니다.
예외
XPath 식은 평가할 수 없습니다.
XPath 식이 잘못되었습니다.
예제
메서드의 예제는 Matches 메서드를 참조하세요 XPathNavigator.Matches .
설명
이 메서드는 .의 XPathNavigator상태에 영향을 주지 않습니다.
적용 대상
Matches(XPathExpression)
현재 노드가 지정된 XPathExpression과 일치하는지 확인합니다.
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
매개 변수
- expr
- XPathExpression
컴파일된 XPath 식을 포함하는 XPathExpression 개체입니다.
반환
현재 노드가 XPathExpression과 일치하면 true
이고, 그러지 않으면 false
입니다.
예외
XPath 식은 평가할 수 없습니다.
XPath 식이 잘못되었습니다.
예제
다음 예제에서는 모든 소설의 제목을 표시합니다.
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
이 예제에서는 파일을 books.xml
입력으로 사용합니다.
<?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>
설명
이 메서드는 .의 XPathNavigator상태에 영향을 주지 않습니다. 이 메서드는 컴파일된 XPath 식을 포함하는 개체가 XPathExpression XPath 식String이 아니라 지정된다는 점을 제외하고 메서드와 동일합니다XPathNavigator.Matches.