-3

I have below XML

<defns:Code typeCode="Name">
John
</defns:Code>
<defns:Code1 typeCode="ID">
12345
</defns:Code1>
<defns:Code2 typeCode="address">
Addresss 1234
</defns:Code2>
<defns:Text typeCode="Name">
Doe
</defns:Text>
<defns:Text2 typeCode="ID">
 123
</defns:Text2>
<defns:Text3 typeCode="Address">
Address 4567
</defns:Text3>

and so on element Code[1..n],Text[1..n] in the file has to be replaced with Code

<defns:Code typeCode="Name">
John
</defns:Code>
<defns:Code typeCode="ID">
12345
</defns:Code>
<defns:Code typeCode="address">
Addresss 1234
</defns:Code>
<defns:Text typeCode="Name">
Doe
</defns:Text>
<defns:Text typeCode="ID">
 123
</defns:Text>
<defns:Text typeCode="Address">
Address 4567
</defns:Text>

Can this be done using SED or AWK. Any help is much appreciated!

tradersjoe
  • 37
  • 4

1 Answers1

-1

I'd use sed:

s@\(</*defns:Code\)[0-9]*@\1@

That strips trailing digits by replacing the prefix plus the digits with only the prefix.

John Zwinck
  • 239,568
  • 38
  • 324
  • 436