× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



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 thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.