수색…


통사론

  1. 특정 노드 내부
    • / path to / element [@attribute_name]
  2. 문서의 어느 곳에서나
    • // * [@ attribute_name]
  3. 특정 값을 가진 특정 노드 내부
    • / path to / element [@ attribute_name = '검색 값']
    • / path to / element [@ attribute_name = "검색 값"]
  4. 어떤 값을 가진 문서의 어느 곳에서나
    • // * [@ attribute_name = '검색 문자열']
    • // * [@ attribute_name = "검색 문자열"]

매개 변수

선택자 기능
@attribute_name 노드의 속성 값을 선택합니다 (있는 경우).

비고

[@attribute_name]을 사용하여 값과 관계없이 속성을 갖는 노드를 선택할 수 있습니다.

시작 자와 소문자와 같은 함수 또는 함수의 조합을 사용할 수 있습니다. 예를 들어이 선택기를 사용하여 우리의 필요에 맞출 수 있습니다.

특정 속성을 가진 노드 찾기

XML

<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>

XPATH

/Galaxy/*[@name]

또는

//*[@name]

산출

<CelestialObject name="Earth" type="planet" />
<CelestialObject name="Sun" type="star" />

특정 속성 값을 가진 노드 찾기

XML

<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>

XPATH

/Galaxy/*[@name='Sun']

또는

//*[@name='Sun']

산출

<CelestialObject name="Sun" type="star" />

속성 값의 부분 문자열 매칭을 통해 노드 찾기

XML

<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>

XPATH

/Galaxy/*[contains(@name,'Ear')]

또는

//*[contains(@name,'Ear')]

작은 따옴표 대신 큰 따옴표를 사용할 수도 있습니다.

/Galaxy/*[contains(@name, "Ear")]

산출

<CelestialObject name="Earth" type="planet" />

속성 값의 부분 문자열 매칭을 통해 노드 찾기 (대소 문자 구별 없음)

XML

<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>

XPATH

/Galaxy/*[contains(lower-case(@name),'ear')]

또는

//*[contains(lower-case(@name),'ear')]

또는 문자열을 큰 따옴표로 묶어서 :

//*[contains(lower-case(@name), "ear")]

산출

<CelestialObject name="Earth" type="planet" />

속성 값의 시작과 일치하는 부분 문자열로 노드 찾기

XML

<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>

XPATH

/Galaxy/*[starts-with(lower-case(@name),'ear')]

또는

//*[starts-with(lower-case(@name),'ear')]

산출

<CelestialObject name="Earth" type="planet" />

속성 값의 끝과 일치하는 부분 문자열로 노드 찾기

XML

<Galaxy>
    <name>Milky Way</name>
    <CelestialObject name="Earth" type="planet"/>
    <CelestialObject name="Sun" type="star"/>
</Galaxy>

XPATH

/Galaxy/*[ends-with(lower-case(@type),'tar')]

또는

//*[ends-with(lower-case(@type),'tar')]

산출

<CelestialObject name="Sun" type="star" />


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow