|
0001 D EnQuote PI 2048A VARYING 0002 D InString 2048A VALUE VARYING D nPos S 5I 0 0003 D OneQ C Const('''') 0004 D TwoQ C Const('''''') 0005 C Eval nPos = %scan(OneQ:InString) 0006 C Dow nPos > 0 0007 C Eval InString = %replace(TwoQ:InString:nPos:1) 0008 C Eval nPos = nPos + 2 0009 C Eval nPos = %scan(OneQ : InString : nPos ) 0010 C enddo 0011 C Return InString -----Original Message----- From: rpg400-l-admin@midrange.com [mailto:rpg400-l-admin@midrange.com] On Behalf Of Jason Sent: Friday, November 08, 2002 2:08 PM To: rpg400-l@midrange.com Subject: Re: procedure/subroutine to quote a string with quotes Heres one I came up with: /If Not Defined(EscapeQuote_D) /Define EscapeQuote_D DEscapeQuote Pr 1000a D InString 1000a Value /EndIf /If Not Defined(EscapeQuote_P) /Define EscapeQuote_P PEscapeQuote B DEscapeQuote Pi 1000a D InString 1000a Value DWorkStr S 1000a Inz DPos S 5s 0 Inz C C Eval Pos = %scan(X'7D':InString) C If Pos <> *Zero -----\ C Dow Pos <> *Zero ---\ I C Eval WorkStr = %replace('''''': InString: POS: 1) I I C Eval Pos = Pos + 2 I I C Eval Pos = %scan(X'7D':WorkStr:Pos ) I I C If Pos = *Zero -\ I I C Leave I I I C EndIf -/ I I C Eval InString = WorkStr I I C EndDo ---/ I C Else ----<I C Eval WorkStr = InString I C EndIf -----/ C C C Return WorkStr P E /EndIf Will return the quoted sting. 11/8/2002 1:43:46 PM, Dan <dbcerpg@yahoo.com> wrote: >The archives are down... I have an urgent need... <g> > >I've got to take a string from a user input and surround it in quotes. >The problem arises when the string itself has a quote or multiple >quotes in it. So if a user keys in: > Don's in deep doo-doo with deleting Dave's files. > >then I gotta put into a variable: > 'Don''s in deep doo-doo with deleting Dave''s files.' > >Can someone help me from having to reinvent the wheel? I will need >solutions for both CL and RPG-IV (at v4r5), but will gladly take one or >the other for now. > >TIA, Dan > >__________________________________________________ >Do you Yahoo!? >U2 on LAUNCH - Exclusive greatest hits videos >http://launch.yahoo.com/u2 >_______________________________________________ >This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list >To post a message email: RPG400-L@midrange.com >To subscribe, unsubscribe, or change list options, >visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l >or email: RPG400-L-request@midrange.com >Before posting, please take a moment to review the archives >at http://archive.midrange.com/rpg400-l. > > > _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@midrange.com To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l or email: RPG400-L-request@midrange.com Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.