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



Yes, in my case I will know

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Kurt Anderson
Sent: Thursday, November 20, 2008 6:06 PM
To: RPG programming on the AS400 / iSeries
Subject: RE: Remove embedded characters in a string

Will you always know the characters will be that you want to remove?

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Mike Cunningham
Sent: Thursday, November 20, 2008 1:10 PM
To: 'rpg400-l@xxxxxxxxxxxx'
Subject: RE: Remove embedded characters in a string

Thanks for all the suggestions. Based on what I got and adding some of
my own I came up with this code that works for my need

* trim off leading zeros
C EVAL WrkSerial = %triml(Serial:'0')
* change all special characters to spaces
C EVAL WrkSerial = %xlate(',-.+':'
':WrkSerial)
* remove all embedded spaces
C DOW %scan(' ':%trimr(WrkSerial)) > 0
C EVAL WrkSerial = %replace('':WrkSerial:%scan('
':WrkSerial):1)
C ENDDO

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Carel Teijgeler
Sent: Thursday, November 20, 2008 1:36 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Remove embedded characters in a string

You can use XLATE:

D OLD C
CONST('ABC-CDEF-GHI')
D NEW C
CONST('ABCDEFGHI')

C OldField:OLD XLATE
NEW
NewField

With regards,
Carel Teijgeler


*********** REPLY SEPARATOR ***********

On 20-11-2008 at 10:18 Mike Cunningham wrote:

Is there an easy way to remove special characters embedded in a string?

I know that %trim will remove them from before/after a string but not
inside the string. I need to be able to take a string like
'XC0-4566.999
X' and turn it into 'XC04566999X'. Removing "-", ".", blanks and
anything
else not a number or letter.
--
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.


No virus found in this incoming message.
Checked by AVG.
Version: 8.0.169 / Virus Database: 270.9.8/1800 - Release Date:
19-11-2008
18:55




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.