Avatar of sridhar R
sridhar R
 asked on

How to strip - and # using xslt

Hell Experts

I Have an xml to xml conversion where i need to copy entire xml As it is but need to strip hypen from bank account numbers and # from Address.

To explain it clearly attached is the source xml. I want the target to be exactly same except that i want to avoid # in field StrtNm (address field) and - in  <Othr/Id>618-401517-001</Id></Othr> (bank account field).

Bottom line is Street address from below part of xml has #. I want that to be stripped

 <PstlAdr>
                  <StrtNm>3 Killiney Road, #07-01 Winsland House I</StrtNm>
                  <PstCd>239519</PstCd>
                  <TwnNm>Singapore</TwnNm>
                  <Ctry>SG</Ctry>
  </PstlAdr>

And bank account no (618-401517-001) form below part of xml has '-' I want that to be stripped.

<CdtrAcct>
               <Id>
                  <Othr>
                     <Id>618-401517-001</Id>
                  </Othr>
               </Id>
               <Tp>
                  <Cd>SACC</Cd>
               </Tp>
               <Ccy>SGD</Ccy>
               <Nm>Winsland Investment PTE LTD</Nm>
            </CdtrAcct>


Below is the code i am using at them moment to copy xml as it is. Can any one please update below code to accomplish above.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    xmlns:wd="urn:com.workday/bsvc"
    xmlns:etv="urn:com.workday/etv" exclude-result-prefixes="xs" version="2.0">
    <xsl:output method="xml"  indent="yes"/>
    <!-- identity transform -->
    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node() "/>
        </xsl:copy>
    </xsl:template>
   
    <xsl:template match="text()">
        <xsl:value-of select="normalize-space()" />
    </xsl:template>
 </xsl:stylesheet>


Thanks in advance for help,
Sridar
SG_ACH_01_09.pgp
XML* XSLT* XSL

Avatar of undefined
Last Comment
Gertone (Geert Bormans)

8/22/2022 - Mon
ASKER CERTIFIED SOLUTION
Gertone (Geert Bormans)

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
sridhar R

ASKER
Hi Geert,

Thanks a ton for help. this code is working perfectly.

Best Regards,
Sridhar
SOLUTION
Gertone (Geert Bormans)

THIS SOLUTION ONLY AVAILABLE TO MEMBERS.
View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
GET A PERSONALIZED SOLUTION
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.
rwheeler23