2012-01-06 20 views
5

Tôi có nguồn XML của tôi như dưới đâydịch một mẫu chuỗi thành một mô hình chuỗi sử dụng XSLT

<contents> 
    <content>AuthorInformation</content> 
    <content>PersonInformation</content> 
    <content>PersonPersonalInformation</content> 
    <content>GurdianDetails</content> 
</contents> 

Tôi muốn chuyển đổi trên XML vào

<contents> 
    <content>Author Information</content> 
    <content>Person Information</content> 
    <content>Person Personal Information</content> 
    <content>Gurdian Details</content> 
</contents> 

bất cứ nơi nào trong nguồn xml nội dung tập tin dữ liệu yếu tố là có chữ hoa chữ thường tôi muốn tiền tố inbetween không gian. Tôi có thể có mẫu XSLT 2.0 làm cách nào để đạt được điều này không.

Trả lời

4

Sử dụng một mẫu như thế này:

<xsl:template match="text()"> 
    <xsl:value-of select="replace(., '([a-z])([A-Z])', '$1 $2')"/> 
</xsl:template> 

này quát thực hiện các quy tắc cho tất cả các nội dung văn bản trong đầu vào. Bạn có thể dễ dàng thực hiện điều này cụ thể hơn (nếu có các yếu tố khác mà bạn không muốn dịch). Chức năng replace là điểm mấu chốt.

Các vấn đề liên quan