2014-07-10 2 views
1

레거시 HTML 파일을 DITA로 변환합니다. 나는 앞으로의 href 속성XSLT - URI 백 슬래시를 슬래시로 변환

<a href="c:\developer\file.html"> 

에서 백 슬래시 창 경로를 변환하고자 성공하지 (XSLT는 V2입니다) 내가 사용 모두 교체하고 번역하는 시도

<xref href="c:/developer/file.dita"> 

슬래시 것입니다. 나는 또한 같은 결과를 가진 http://geekswithblogs.net/Erik/archive/2008/04/01/120915.aspx에 string.replace 메서드를 시도했다.

+0

'번역'에 대한 호출이 어떻게 생겼습니까? 이 일을해야하지만 당신은 탈출을 고려해야 할 수도 있습니다. –

+0

수십억 가지 다른 방법을 사용해 보았습니다. select = "translate ('\', node(), '/')"및 "translate (., '\', '/') 통조림 XSL을 사용하는 문제는 무엇입니까? DITA-OT에서 h2d.xsl이라고 부릅니다. 원래 링크를 쓰는 위치를 이해하는 것은 어렵습니다. –

답변

10

으로 대체 및 변환 (XSLT는 v2)을 사용하려고 시도했지만 성공하지 못했습니다.

translate(@href, '\', '/') 

는 잘 작동합니다. 또는 하나의 방법으로 모든 작업을 수행하려면 다음을 시도하십시오.

<xsl:template match="a"> 
    <xref href="{replace(replace(@href, '\\', '/'), '.html', '.dita') }"> 
     <xsl:apply-templates/> 
    </xref> 
</xsl:template>