title: xsl:matching-substring always returns "false"
body: <p>I'm trying to write a function which gets the domain name from a URL text in XML file i.e www.example.com.</p>
  
  <pre><code> &lt;xsl:function name="fdd:get-domain"&gt;
      &lt;xsl:param name="url"/&gt;
  
      &lt;xsl:analyze-string select="$url" regex="^(.*)://([a-zA-Z0-9\-\.]?[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(/\S*)?)(/.*)$"&gt;
          &lt;xsl:matching-substring&gt;
              &lt;xsl:value-of select="regex-group(1)"/&gt;
          &lt;/xsl:matching-substring&gt;
  
          &lt;xsl:non-matching-substring&gt;
              &lt;xsl:value-of select="false()"/&gt;
          &lt;/xsl:non-matching-substring&gt;
  
      &lt;/xsl:analyze-string&gt;
   &lt;/xsl:function&gt;
  </code></pre>
  
  <p>This function always returns <code>false</code>. I'm not sure what am I missing in this.</p>