normalize-space()-Funktion  
Mit dieser Funktion lässt sich zusätzlicher Leerraum aus dem String im Argument entfernen.
 
Eingaben

Ein optionaler String. Wird kein Argument angegeben, verwendet die Funktion normalize-space() den String-Wert des Kontextknotens.

 
Ausgabe

Der Argument-String, aus dem Leerräume wie folgt entfernt worden sind:

    Alle führenden Leerraumzeichen wurden entfernt.

    Alle nachfolgenden Leerraumzeichen wurden entfernt.

    Innerhalb des Strings wurden alle aufeinanderfolgenden Leerraumzeichen durch jeweils ein Leerzeichen ersetzt.

 
Definition

XPath-Abschnitt 4.2, Zeichenkettenfunktionen

 
Beispiel

Hier ein kurzes Beispiel, das veranschaulicht, wie normalize-space() funktioniert:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output method="text"/>

  <xsl:variable name="newline">
<xsl:text>
</xsl:text>
  </xsl:variable>


  <xsl:variable name="testString">
    <xsl:text>                 This
is


a string
with lots of


whitespace.

</xsl:text>
    </xsl:variable>

  <xsl:template match="/">
    <xsl:value-of select="$newline"/>
    <xsl:text>Tests of the normalize-space() function:</xsl:text>

    <xsl:value-of select="$newline"/>
    <xsl:value-of select="$newline"/>
    <xsl:text>   normalize-space('       Hello,            World!')="</xsl:text>
    <xsl:value-of select="normalize-space('       Hello,            World!')"/>
    <xsl:text>"</xsl:text>
    <xsl:value-of select="$newline"/>
    <xsl:text>   normalize-space($newline)="</xsl:text>
    <xsl:value-of select="normalize-space($newline)"/>
    <xsl:text>"</xsl:text>
    <xsl:value-of select="$newline"/>
    <xsl:text>   normalize-space($testString)="</xsl:text>
    <xsl:value-of select="normalize-space($testString)"/>
    <xsl:text>"</xsl:text>
    <xsl:value-of select="$newline"/>
  </xsl:template>

</xsl:stylesheet>

Das Stylesheet erzeugt die folgende Ausgabe:


Tests of the normalize-space() function:

   normalize-space('       Hello,            World!')="Hello, World!"
   normalize-space($newline)="
   normalize-space($testString)="This is a string with lots of whitespace."