에서 (노드 이름을 포함) 모든 텍스트를 선택하려면? 감사.나는 현재이 같은 XML 파일이 노드
답변
XSLT에서 요소를 복사하려고한다고 말해야합니다. 추가 규칙으로이를 수행 할 수 있습니다. apply-templates 요소에 사용자 정의 select 절을 사용하여 모든 노드 유형의 객체뿐만 아니라 속성을 선택한다는 점에 유의하십시오. 또한 aaa에 대한 규칙이 우선하며, 은 아니며은 aaa 요소 자체를 출력에 복사합니다. <b>I am a <i>boy</i></b>
:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="aaa">
<xsl:apply-templates select="@*|node()"/>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
<aaa> <b>I am a <i>boy</i></b>. </aaa>
어떻게 같은 정확한 문자열을 얻을 수 있습니다.? "모든 선택 :이 의미
/*/node()
:
귀하의 경우이 작업을 수행하는 가장 쉬운/가장 짧은 방법은 출력에 다음 XPath 식의 결과입니다 최상위 요소의 자식 노드는입니다. "
물론 우리가 선택하지 않으려는 일부 공백 문자 노드가 있지만 XSLT가이를 처리 할 수 있으므로 XPath 표현식은 위에 표시된 것처럼 간단합니다. 이 변환이 제공된 XML 문서에 적용되는
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<xsl:copy-of select="/*/node()"/>
</xsl:template>
</xsl:stylesheet>
, 원하는 결과가을 생산 :
이제, XSLT 변환과 결과를 얻으려면, 우리는 다음 사용
<b>I am a <i>boy</i></b>.
주의 마십시오
,<xsl:copy-of>
XSLT 명령의 사용 (되지<xsl:value-of>
) 사본 노드 아닌 문자열 값.XML 문서의 공백 문자 만있는 텍스트 노드를 무시하도록 XSLT 프로세서에 지시하는 XSLT 명령을 사용합니다.
표시 할 내용 : XSLT는 XPath에서 수행 할 수있는 모든 작업을 수행 할 수 있습니다. :-)이 접근법을 사용하면 재귀 적으로 조정할 수 없다는 것에 유의하십시오. –
"."이 없습니다.xpath는 잘 못된 출력으로 직렬화 될'
@ Mads-Hansen : 고마워, 나는 "." - 질문에서 문장을 끝내는 구두점이라고 생각했습니다. 그에 따라 내 대답이 업데이트되었습니다. –
- 1. 나는 같은 XML 파일이
- 2. 나는 현재이 같은 오라클 연결하기
- 3. REXML - 나는 다음과 같은 형식의 XML 파일이
- 4. 나는이 같은 XML 파일이
- 5. 나는 한 다음과 같은 XML 구조가 XML
- 6. 재귀 기능 나는 다음과 같은 형식의 XML 파일이
- 7. 나는이 같은 XML 파일이 VIM
- 8. PHP로 XML 파일을 조작 나는 다음과 같이 XML 파일이
- 9. 펄 나는 다음과 같은 텍스트 파일이 마지막
- 10. 레일 - 찾거나 다음 나는 현재이 기본값
- 11. 어떻게 동적 나는 현재이 일을하고 연관 배열
- 12. 나는 파일이
- 13. PHP XML 노드 삭제
- 14. 내가 XML 파일이 XML 파일
- 15. 정규식은 노드가 나는 다음과 같은 XML 문서가
- 16. 나는 다음과 같은 태그를 가지고있는 XML 문서가
- 17. 나는 다음과 같은 스타일로 일부 XML 작성해야
- 18. PHP XML 편집 CDATA 노드
- 19. Drupal 노드 양식 | 각 노드 유형에 .tpl 테마 파일이 있습니까?
- 20. Linq을 사용하는 XML 업데이트 노드
- 21. 아이폰 찾기와 나는 파일이
- 22. PHP가 나는 파일이 0
- 23. xml 파일의 노드 이름을 C#
- 24. C# Foreach XML 노드
- 25. XML 하위 노드 속성
- 26. XML 노드 값과 XML 노드 속성의 차이점과 사용법 모범 사례
- 27. SQL과 같은 XML 쿼리?
- 28. 특정 노드 아래 xml 노드 수
- 29. xml 노드 이름 확인
- 30. Xml 노드 편집
xslt를 사용해야합니까? 어때 xml 파서 + xpath? –
제목 줄에 "[xslt]"와 같은 태그를 넣지 마십시오. 그것이 바로 태그가있는 것입니다. –
좋은 질문 (+1). 설명과 완벽하지만 짧고 쉬운 해결책에 대한 내 대답을보십시오. :) –