2017-02-27 75 views
0

我想刪除鏈接的結束‘#’符號,當其在超鏈接的末尾來需要刪除「#」符號時,它來得

我輸入的XML是:

<Uri>http://www.tneb.nih.gov/lifeafter#</Uri> 

XSL我使用:

<xsl:template match="Uri"> 
     <xref format="html" href="{.}" outputclass=""> 
     <xsl:value-of select="."/> 
     </xref> 
    </xsl:template> 

輸出我越來越爲:

<xref format="html" 
       href="http://www.tneb.nih.gov/lifeafter#" 
       outputclass="">http://www.tneb.nih.gov/lifeafter#</xref> 

預期輸出:

<xref format="html" 
       href="http://www.tneb.nih.gov/lifeafter" 
       outputclass="">http://www.tneb.nih.gov/lifeafter#</xref> 

我需要在「href」屬性的年底將「#」符號。不與內部文本。請建議我爲此編碼。提前致謝。

回答

1

試試這個

<xref format="html" href="{replace(., '#$', '')}" outputclass=""> 
+0

感謝@Rupesh。它的工作正常 – User501

0

,或者如果你總是在最後嘗試的哈希(#)字符:

<xsl:value-of select="substring-before(., '#')"/> 
+0

如果使用子字符串功能比「#」,它可以導致數據刪除如果「#」出現在文本之間,如問題 – Rupesh

+0

是@clogwog提到的。它從數據中刪除 – User501

+0

啊我沒有意識到你可以在一個url內部有一個散列(#)字符。我認爲它最終只用於書籤。 – clogwog