|
Jeffrey, The article I was talking about is at this link. It does the job and has the source that you can cut/paste into your editor of choice. http://www.mcpressonline.com/mc?1@xxxxxxxxxxxxxxxx@.6ae9a226 -Bob -----Original Message----- From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Hans Boldt Sent: Tuesday, June 01, 2004 8:18 AM To: rpg400-l@xxxxxxxxxxxx Subject: Re: trimming non-numerics Jeffrey Lee wrote: > I was wondering how I could strip any non numberic characters from a set of numbers submitted via a html form. For example (504) 555-5555 would be 5045555555 or 504-555-5555 would be 5045555555 Like %trim does with spaces is there something to deal with non-numberics? > -- If you were programming in Python, you could do this with the simple expression (''.join([c for c in source if c.isdigit()])). ;-) But since this is an RPG list, you probably want an RPG answer, right? Others have suggested using some combination of the built-in functions %XLATE and %REPLACE. Personally, I thinks that's overkill. I'd recommend the obvious approach of simply looping over the source string selecting the digits out of the string (just like what the above Python expression does): ------------------------------------------------------------------ D i s 10i 0 D source s 50a varying D target s 50a varying /free source = 'jafgjh934hdfg94k3ghsd0jdfg0345jdfg'; target = ''; // Extract digits out of source string for i = 1 to %len(source); if '0' <= %subst(source:i:1) and %subst(source:i:1) <= '9'; target += %subst(source:i:1); endif; endfor; // Display results dsply source; dsply target; *inlr = *on; /end-free ------------------------------------------------------------------ Oh yeah, if you're not on V5R2, replace the middle statement of the loop with: target = target + %subst(source:i:1); Cheers! Hans -- 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 mailing list archive is Copyright 1997-2025 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.