Dreamweaver TechniqueJAVA Script サンプル | CSS sample | JAVA Applet sample | Flash Sample
HTML4.0 riference | DynamicHTMLXHTML | XML sample | XSLT sample | RIKO's ASP Trial

空白文字を扱う

■ 空白の削除

このサンプルは、XSLファイルを制作した後で、異なるネームスペースに属する接頭辞を、別の接頭辞に置換するものです。namespace-alias(ネームスペース-エイリアス)という名の通り、元となるXSLコードを、エイリアス(別名)のネームスペースを持ったXSLコードに変換してくれます。,xsl:namespace-alias stylesheet-prefix=!置換前の接頭辞" result-prefix="置換後の接頭辞" />のように記述します。

strip-space1.xml

 

strip-space1.xsl

<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" version="1.0" standalone="yes" indent="yes" />
<xsl:strip-space elements="氏名" />
<xsl:template match="/">
<xsl:apply-templates select="全体" />
</xsl:template>

<xsl:template match="全体">
<全体>
   <情報>
      <xsl:for-each select="情報">
         <氏名><xsl:value-of select="氏名" /></氏名>
      </xsl:for-each>
   </情報>
</全体>
</xsl:template>
</xsl:stylesheet>

※ xsl:namespace-spaceはトップレベル要素なので、xsl:stylesheetまたはxsl:transform要素の直下に記述しましょう。

strip-space1.hta

<html>
<head>
   <script type="text/vbscript">
   <!--
      option explicit
      dim xmldoc,stylesheet,result
      dim kakikae,fso,f
      sub window_onload()
      set xmldoc=createObject("microsoft.xmldom")
      xmldoc.async=false
      xmldoc.load("strip-space1.xml")

      set stylesheet=createObject("microsoft.xmldom")
      stylesheet.async=false
      stylesheet.load("strip-space1.xsl")

      result=xmldoc.documentElement.transformNode(stylesheet)
      kakikae=Replace(result,"UTF-16","Shift_JIS")
      result=kakikae

      set fso=createObject("scripting.fileSystemObject")
      set f=fso.openTextFile("c:\data\sample_save\strip-space1_s.xml",2,true)
      f.write result
      f.close
      set f=Nothing

      window.location.href="c:\data\sample_save\strip-space1_s.xml"
      top.window.close()

      end sub
   -->
   </script>
</head>
<body></body>
</html>

XML文書を扱うには、常に特殊文字や空白文字などを意識しておく必要があります。XMLコードを見やすくするために[TAB]キーを使ってタグとタグの間を空けていると、空白と誤認されて複数行改行してしまうこともあります。

<<<戻る

R HOUSE | RIKO's Trial Page | Shirley's Pettit Case | Shirley's i-box | Shirley's little box