Wordでテキストデータを整形して取り出すXSLT
テキストデータだけを取り出す際に、段落ごとに字下げするなどの整形処理を加える場合は次のようなテンプレートを使用します。
■ Wordでテキストデータを整形して取り出すXSLT
テキストを整形するXML文書サンプル <?xml version="1.0" encoding="SHIFT_JIS" ?> <xsl:stylesheet version=1.0 xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml" exclude-result-perfixes="w" xmlns:xslns="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="SHIFT_JIS indent="yes" /> <xsl:template match /> <xsl:apply-templates select="//w:body /> //本文パートのみテンプレートを使用 <xsl:template /> <xsl:template match="w:p[.//w:t]"> //w:t要素を子孫に持つw:p要素のテンプレート <xsl:text> </xsl:text> //w:t要素の内容を取り出す。先頭に空白1文字を入れる //改行を2つ出力する <xsl:apply-template select=".//w:t" /><xsl:text> //w:t要素にテンプレートを適用している。 </xsl:text> <xsl:template /> <xsl:template match=match="w:binDATA"> //w:binData要素(バイナリデータ)用のテンプレート。何も行わない <xsl:template /> </xsl:stylesheet> <<<戻る
テキストを整形するXML文書サンプル
<?xml version="1.0" encoding="SHIFT_JIS" ?> <xsl:stylesheet version=1.0 xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml" exclude-result-perfixes="w" xmlns:xslns="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" encoding="SHIFT_JIS indent="yes" /> <xsl:template match /> <xsl:apply-templates select="//w:body /> //本文パートのみテンプレートを使用 <xsl:template /> <xsl:template match="w:p[.//w:t]"> //w:t要素を子孫に持つw:p要素のテンプレート <xsl:text> </xsl:text> //w:t要素の内容を取り出す。先頭に空白1文字を入れる //改行を2つ出力する <xsl:apply-template select=".//w:t" /><xsl:text> //w:t要素にテンプレートを適用している。 </xsl:text> <xsl:template /> <xsl:template match=match="w:binDATA"> //w:binData要素(バイナリデータ)用のテンプレート。何も行わない <xsl:template /> </xsl:stylesheet>
<<<戻る