XSLT提取字符串与|分开

时间:2014-07-03 11:10:42

标签: xml xslt

所以我在XML文档中有一个节点,如下所示:

 <kw>Saurier|Haustier|lieb</kw>

我必须用XSLT(Saxon)提取信息,它用|分隔。 我已经尝试过使用子字符串,但编译器认为因为|而有多个项目 我该怎么做?

编辑:

XML DATA

<?xml version = "1.0" encoding = "ISO-8859-1" ?>
<book>

<title>Unsere Haustiere</title>
<section>
    <title>Fische</title>
    <kw>Fisch</kw>
    <kw>Haustier|leise</kw>
    <para>Fische brauchen immer Wasser</para>
</section>
<section>
    <title>Säugetiere</title>
    <kw>Säugetier</kw>
    <section>
        <title>Katzen</title>
        <kw>Katze</kw>
        <kw>Haustier|lieb</kw>
        <kw>Haustier|gefährlich</kw>
        <para>Katzen kratzen an den Möbeln.</para>
        <section>
            <title>Die Katze</title>
            <kw>Katze</kw>
            <para>Hier Text einfügen...</para>
        </section>
        <section>
            <title>Der Kater</title>
            <kw>Kater</kw>
            <para>Der Kater ist der Mann bei den Katzen.</para>
        </section>
    </section>
</section>
<section>
    <title>Saurier</title>
        <kw>Saurier</kw>
        <kw>Dinosaurier</kw>
        <section>
            <title>Tyrannosaurus rex</title>
            <kw>Tyrannosaurus rex</kw>
            <kw>Saurier|Haustier|lieb</kw>
            <kw>Haustier|lieb</kw>
            <para>Der T-rex ist ein liebes Haustier.</para>
       [...]

不知道如何解释,但我必须使索引看起来像这样

http://s1.directupload.net/images/140703/obxzuz6x.png

为此,我必须提取kw元素。有信息必须将动物编入索引。

1 个答案:

答案 0 :(得分:0)

根据您的XSLT版本,您可以使用tokenize()或str:tokenize。

请参阅how to make xsl tokenize work