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



If I could use my cliché answer, If you have the RPG xTools...

Eval DATA =  FindReplace('@#$%&*': '' :DATA : FR_CHAR)

The 4th parm, FR_CHAR tells the procedure to search/replace each character
individually, rather than treat it as a pattern.
In the FindReplace source code, I use the memchr() technique I originally
mentioned and it seems to be pretty fast.

-Bob


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of Bruce Guetzkow
Sent: Tuesday, October 05, 2004 5:06 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: RE: multiple search arguments in one scan?

Dan:

Have you considered doing it in SQL?

      *===============================================================
     d test...
     d                 pr              n   extproc(*CL:'TEST')
     d  value                       100a   const
      *===============================================================
      *  Procedures
      *===============================================================
     p test...
     p                 b                   export
      *===============================================================
     d test...
     d                 pi              n
     d  value                       100a   const
      *===============================================================
     d success         s               n   inz(*off)
     d success_val     s              1a   inz(*off)
      *===============================================================
      /free

         // Clear Values
                   reset success;
                   reset success_val;

      /end-free
      *===============================================================
     c/exec sql
     c+ select '1'
     c+   into :success_val
     c+   from sysibm/sysdummy1
     c+  where :value like '%&%'
     c+     or :value like '%+%%'
     c+     or :value like '%*%'
     c+     or :value like '%+_%'
     c+     or :value like '%?%'
     c/end-exec
      *===============================================================
      /free

         // Return Value
                   success = success_val;
                   return success;

      /end-free
      *===============================================================
     p                 e
      *===============================================================

>There *is* an easy way to do this in RPG, is there not?

Just a thought...

Bruce Guetzkow
Information Services Director
United Credit Service, Inc.
Phone: 262-723-2902
Fax: 262-723-5568
Email: bruceg@xxxxxxxxxxxxxxxxxxxxxxx
Web: www.unitedcreditservice.com


--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
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 ...

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.