|
Subject: Re: [xsl] replace a string that is in between two specific chars in XSLT 1.0 From: "Michael Müller-Hillebrand mmh@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Wed, 13 Oct 2021 17:42:18 -0000 |
Hi Prady,
Assuming you meant "string split by ;" I came up with this template doing the
work:
<xsl:template match="Ip">
<xsl:variable name="entries" select="tokenize(text(), '\s*;\s*')"
as="xs:string*"/>
<xsl:element name="nums" namespace="http://xmlns.ieee.org/V2">
<xsl:value-of select="($entries ! substring-before(., '#')) =>
string-join(';')" />
</xsl:element>
</xsl:template>
It uses XSLT 3 features, because they are so great, and b frankly b I am
not motivated to do this using XSLT1. This will most probably involve a
recursive template using substring-before and substring-after.
- Michael
> Am 13.10.2021 um 17:32 schrieb Prady Prady prady.chin@xxxxxxxxx
<xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>:
>
> Team,
>
>
> Can somebody help me to replace string that is in between # and ; with
blank. I need to include this is oracle bpel which only supports xslt 1.0
>
> From:
> <IpsCollection xmlns="http://xmlns.oracle.com/aa
<http://xmlns.oracle.com/aa>">
> <Ips>
> <Ip>q1#11.11.11.111;q2#22.22.22.22</Ip>
> </Ips>
> </IpsCollection>
> To:
> <v2:Ops xmlns:v2="http://xmlns.ieee.org/V2 <http://xmlns.ieee.org/V2>">
> <v2:nums>q1;q2</v2:nums>
> </v2:Ops>
>
>
> Thank you very much for your help!
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] replace a string that is , Martin Honnen martin | Thread | Re: [xsl] replace a string that is , Prady Prady prady.ch |
| Re: [xsl] Side notes layout in xslt, Jean-Paul Rehr rehrj | Date | Re: [xsl] Side notes layout in xslt, kevin.brown@xxxxxxxx |
| Month |