次のスニペットがあり、それを使用して、基本的に 1 ~ 4 桁の数字である最初の文字グループを除くすべてを取得したいと考えています。文字のグループはスペースで区切られます。私はトークン化でいくつかの方法を試しましたが、成功しませんでした。2 番目、3 番目、または 4 番目のアイテムを一度に 1 つずつ取得できますが、すべてを一度に取得することはできません。
ここに私のソースファイルがあります:
<html>
<head>
<title></title>
</head>
<body>
<!-- This is my first comment -->
<ol>
<li>1 data</li>
<li>2 data</li>
<li>3 data</li>
<li>4 data</li>
<li>5 data additional data</li>
<li>6 data</li>
<li>7 data</li>
<li>8 data</li>
<li>9 data</li>
<li>1055 data</li>
<li>1100 data</li>
<li>1247 data</li>
<li>1345 data more data</li>
</ol>
</body>
</html>
そして、ここに私の切り取ったものがあります:
<xsl:template match="li">
<document>
<title>
<xsl:variable name="test" select="text()"/>
<xsl:value-of select="tokenize($test, ' ')[2]"/>
</title>
<doc:id>
<xsl:number value="substring-before(., ' ')"/>
</doc:id>
</document>
</xsl:template>