に置き換えます。1つのノードにいくつかの段落を含む一連のテキストがあるXMLがあります。私は\ nを</p><p>
に置き換える必要があります。すべてのテキストセクションは、開始時に<p>
、最後にXSLT定義の</p>
となります。XSLTで nを</p><p>
は、私はこれを試してみましたが、それはサクソンに私にエラーを与える:変数find_allが宣言されていない(またはその宣言が有効範囲ではありません)
<xsl:template match="/csv/row/col[17]">
<xsl:param name="find_all">
<xsl:value-of select="."/>
</xsl:param>
<xsl:param name="find_return">
<xsl:text>(.*)\n(.*)</xsl:text>
</xsl:param>
<xsl:param name="replace_return">
<xsl:text>$1</p><p>$2</xsl:text>
</xsl:param>
</xsl:template>
そして、この後:
<col name="Model descr.">
<content>
<xsl:text><p></xsl:text>
</content>
<content>
<xsl:value-of select="replace($find_all, $find_return, $replace_return)"/>
</content>
<content>
<xsl:text></p></xsl:text>
</content>
</col>
何が間違っていますか?
おかげ
月
ます。また 'ます。を必要とすることがあります。 XSL:テンプレート>'があった場合 'p'タグの二つのレベルを避けるために既存のマークアップされた段落です。 –
これは私にとってはうまくいくかどうかはわかりません。私が働いているのは、XMLを受け取り、それをHMTLを作成するプロセッサに送り、HTMLからPDFを出力するシステムです。私のXMLの各ノードは、PDFになるHTMLテンプレートと組み合わされたJavsScriptの変数です。 HTMLテンプレートでは、この変数のDIVタグとPタグが既にあります。私の問題は、長いテキストに改行が含まれている場合です。開始段落のタグはすでに配置されているので、改行を改行してPを終了し、新しい開始Pを、私のポストのタイトルを参照してください。 –