방금 Xpath를 배우기 시작했습니다. 각 영화 부모 (자바를 통해!)의 모든 배우를 선택할 코드 줄을 작성하려고합니다. 아래에는 하나의 영화 예가 나와 있지만, 각각 개의 요소가있는 <Movie>
개의 요소가 여러 개 있습니다.Xpath : 모든 요소 유형을 선택 하시겠습니까?
<Movie Genre = 'Other'>
<Title>Requiem For A Dream</Title>
<ReleaseYear>2000</ReleaseYear>
<Director>Darren Aronofsky</Director>
<Actor Character = 'Sara Goldfarb'>Ellen Burstyn</Actor>
<Actor Character = 'Harry Goldfarb'>Jared Leto</Actor>
<Actor Character = 'Marion Silver'>Jennifer Connelly</Actor>
<Actor Character = 'Tyrone C. Love'>Marlon Wayans</Actor>
</Movie>
현재, 나는 각 <Movie>
요소의 첫 번째 <Actor>
요소를 선택할 수 있습니다 - 그것은 루프를 사용하지 않고 그들 모두를 선택할 수 있습니다?
System.out.println("Starring: " + xpath.evaluate("Actor", movieNode) + " as " + xpath.evaluate("Actor/@Character", movieNode) + "\n");
이 모든 모든 도움을 많이 감사합니다 경우 :
여기에 모든 <Movie>
요소의 첫 번째 <Actor>
요소를 표시 코드 내 현재 라인입니다!
@Johannes : 당신이하고 싶은 것이 분명하지 않습니다. 전체 문서에서 모든'Actor' 요소를 선택 하시겠습니까? 또는 컨텍스트에서 일부 'Movie' 요소의 모든'Actor' 요소 하위를 선택하겠습니까? –
이전에 Java에서 XPath를 사용하지는 않았지만 반환 유형을 String이 아닌 NodeSet으로 변경해야한다고 생각합니다 ('evaluate()'의 오버로드 사용). 거기에 API를 조금 더 멋지게 포장하는 라이브러리가있을 수 있다고합니다. 아, 그런데 문서의 모든 액터 요소를 선택하는 표현식은'// Actor'가됩니다 – CurtainDog
@Alejandro : 모든 영화의 모든 하위 요소입니다. – Johannes