Re: [xml] Remove whitespaces from text nodes
- From: spam spam spam spam free fr
- To: Michael Ludwig <milu71 gmx de>
- Cc: xml gnome org
- Subject: Re: [xml] Remove whitespaces from text nodes
- Date: Wed, 15 Feb 2012 10:00:37 +0100 (CET)
This solution works correctly, thank you.
It strips leading and trailing whitespace.
But now, I am wondering if there is a solution just using libxml2 (without libxslt).
In fact, I am requesting for a transformation of the XML document.
Indeed, the original node contains whitespaces and I want to remove them...
So I think the answer is "NO!", because this is the job of stylesheets to apply this transformation.
Can someone tell me if there is a way to apply a function which does this work in libxml2 ?
----- Mail original -----
De: "Michael Ludwig" <milu71 gmx de>
Ã: xml gnome org
EnvoyÃ: Mardi 14 FÃvrier 2012 21:13:19
Objet: Re: [xml] Remove whitespaces from text nodes
spam spam spam spam free fr schrieb am 14.02.2012 um 10:59 (+0100):
I write a C program using the libxml2 library.
I would like to have this output (without editing my XML file) :
"My book "A""
"My book "B""
"My book "C""
The useless whitespaces are removed from text nodes.
Is there a function which do this work?
Don't know the C API, but in XSLT there's the function normalize-space()
and it does just what you want, so you might want to take a look at the
source of LibXSLT. Or use XSLT directly.
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="text()" priority="2">
<xsl:copy-of select="normalize-space()"/>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
--
Michael Ludwig
_______________________________________________
xml mailing list, project page http://xmlsoft.org/
xml gnome org
http://mail.gnome.org/mailman/listinfo/xml
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]