Subject: Re: [xsl] replacing of characters based on position From: Brandon Ibach <brandon.ibach@xxxxxxxxxxxxxxxxxxx> Date: Tue, 16 Nov 2010 14:59:14 -0500 |
It sounds like the real requirement is "convert the UUID string to a string containing only valid hexadecimal characters without losing information, uniqueness or reversibility". If so, then why not just drop the '-' characters with translate(., '-', '') and put them back in fixed positions later with either substring (XSLT 1.0) or regex (XSLT 2.0) functions? -Brandon :) On Tue, Nov 16, 2010 at 10:51 AM, ram <ram_kurra@xxxxxxxxxxx> wrote: > well, Its part of the requirement where i have replace 0 in place of '-', so that when we get this uuid back, we will replace '0' with '-'. > The reason of this mq is replacing - with 0 because - is not a right hexadecimal value. before droping this uuid in mq, i want to replace it with 0 then once i get the response from mq i want to replace 0 with - so that i will make sure that uniqueness of uuid. > > --- On Tue, 16/11/10, Imsieke, Gerrit, le-tex <gerrit.imsieke@xxxxxxxxx> wrote: > >> From: Imsieke, Gerrit, le-tex <gerrit.imsieke@xxxxxxxxx> >> Subject: Re: [xsl] replacing of characters based on position >> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >> Date: Tuesday, 16 November, 2010, 11:55 AM >> On 16.11.2010 07:09, ram wrote: >> > well, i am using xslt 2.0. i need the position based >> replacement rather than regexp. >> > The >> reason is i want reverse back '0' with - later >> at some point , so thaat i can guarente that same uuid is >> going to be generated after reversal. >> > >> > step1:550e8400-e29b-41d4-a716-446655440000 to >> 550e84000e29b041d40a7160446655440000 >> > >> > >> step2:550e84000e29b041d40a7160446655440000 to >> 550e8400-e29b-41d4-a716-446655440000 >> >> Bookkeeping (saving the positional data and later acting >> upon this >> separately stored information) is quite cumbersome. >> If you tell us why there need to be zeros in the middle of >> the process, >> we might come up with an alternative solution that is less >> expensive in >> terms of bookkeeping, such as: >> - replacing '-' with a different unique character >> - wrapping the whole uuid in a newly created element (by >> virtue of >> xsl:analyze-string) so that its content may be treated >> differently than >> the surroundings >> - generating an element in lieu of '-' (also using >> xsl:analyze-string) >> - ... >> >> -Gerrit >> >> >> >> > >> > --- On Tue, 16/11/10, David Carlisle<davidc@xxxxxxxxx> >> wrote: >> > >> >> From: David Carlisle<davidc@xxxxxxxxx> >> >> Subject: Re: [xsl] replacing of characters based >> on position >> >> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx >> >> Cc: "ram"<ram_kurra@xxxxxxxxxxx> >> >> Date: Tuesday, 16 November, 2010, 4:40 AM >> >> On 15/11/2010 22:44, ram wrote: >> >>> Hi, >> >>> I >> have xsl >> >> variable which holds the following uuid value >> >> (550e8400-e29b-41d4-a716-446655440000) which has >> '-' at >> >> 9-14-19-24 positions. >> >>> I want to go these >> positons >> >> 9-14-19-24 and replace the characters '-' with >> zero's. >> >>> Is there >> any function >> >> such as replace(position values,character,replace >> character) >> >> available in xslt. >> >>> >> >>> >> >>> >> >> you should always say whether you are using xslt 1 >> or 2, >> >> especially if asking about string handling, >> >> >> >> do you actually need position based replace, (that >> would be >> >> easy using xslt 2 regexp, or only slightly more >> verbose >> >> using a mixture of substring and concat) but your >> original >> >> problem statement could be solved by >> translate(.,'-','0') >> >> >> >> David
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] replacing of characters b, Brandon Ibach | Thread | Re: [xsl] replacing of characters b, David Carlisle |
Re: [xsl] replacing of characters b, ram | Date | Re: [xsl] replacing of characters b, Brandon Ibach |
Month |