그래서 내가 같은 노드 구조가 있다고 가정 :이 내 XML 아니라고하고 싶은 모든XPath 1.0 : 여러 노드 결과에서 문자열 반환?
<Row>
<Column Name="Primary Number">1</Column>
<Column Name="Secondary Number">01</Column>
<Column Name="Text">This is all one sentence</Column>
<Row>
<Column Name="Primary Number">1</Column>
<Column Name="Secondary Number">02</Column>
<Column Name="Text">I would like to return</Column>
<Row>
<Column Name="Primary Number">1</Column>
<Column Name="Secondary Number">03</Column>
<Column Name="Text">as one string, in one xpath line</Column>
먼저,도 나는 그것을 구성하는 도움 않았다. 그러나 나는 그것을 필요로하는 정보를 검색하는 데 사용하도록 강요 받고 있습니다 .... 그래서 제발 도와주세요.
그래서 하나의 XPath를 사용하여 모든 기본 숫자 = 1 노드의 모든 n 개의 텍스트 필드에서 텍스트를 포함하는 문자열 하나를 반환하고 싶습니다.
XPath 1.0을 사용하면 가능합니까?
안녕 모두를 나는 그리 우아한 해결책을 가지고,하지만 난 차 번호의 정확한 수를 알고있는 경우에만 작동하고, 그것은 지저분한 CONCAT 단지 무리()의의 , 모두의 반응에 감사드립니다! 그래서이 문자열로 무엇을하고 싶었는지, 특정 키워드를 검색하기 위해 contains()를 사용 했었지만 실제로 모든 값을 연결 한 문자열을 가지고있는 바로 가기를 발견하고 누군가의 경우에이를 공유해야했습니다. 비슷한 문제가 있었다. Tod의 힌트가 이에 도움이되었습니다. BAM 마법과 조건을 추가했습니다. 은 여기있다 :
Table[@Name='TableName']/Row/Column[@Name='Text' and contains(text(),"keyword")][preceding-sibling::Column[@Name='Primary Number' and text()='15']]
그래서이 무엇 대신에 다음 사용하여 하나 개의 문자열이 포함와 노드 값 결과()를 모두 연쇄이며, 별도로함으로써 제거 단어의 각 행을 검색 불가능에 대한 필요성. 모든 도움을 주신 분들께 감사 드리며, 모든 위대한 반응이 없었다면 그것을 할 수 없었습니다! (I 모두 투표 업을주고 싶지만, 너무 새로운 해요 :()
이 보인다
같은 질문 : http://stackoverflow.com/questions/1403971/xpath-to-return-string-concatenation-of-qualifying-child-node-values – kan
@Kan 링크를 제공해 주셔서 감사합니다. 지저분한 concats를 사용하는 것에 붙어 .... – JWiley