|
From: Leif Svalgaard <leif@leif.org> To: <MIDRANGE-L@midrange.com> Sent: Monday, March 19, 2001 8:16 AM Subject: Re: Web apps on the AS/400 > maybe RPG isn't so bad after all :-) > Here is another string problem: > > Given a string char(50), replace all > EMBEDDED spaces with hyphens, > but leave leading and trailing spaces alone. > E.g. " this is a test " > should become " this_is_a_test " > : solution in MI: time to write: 3 min time to run (100000 times) 2.4 secs. on 150 box code: DCL DD THE-STRING CHAR(50); DCL DD THE-RESULT CHAR(50); DCL DD SIZE BIN(2); DCL DD START BIN(2); DCL DD END BIN(2); DCL DD NBR BIN(4); CPYBLAP THE-STRING, " THIS IS A TEST ", " "; CPYBLAP THE-RESULT, " ", " "; CPYNV NBR, 100000; AGAIN: TRIML END, THE-STRING, " "; VERIFY START, THE-STRING, " "; SUBN SIZE, END, START; ADDN(S) SIZE, 1; XLATE THE-RESULT(START:SIZE),THE-STRING(START:SIZE)," ","_"; SUBN(SB) NBR, 1/POS(AGAIN); RTX *; one little complication (that you are allowed to ignore too) is if the string is empty, then the above code fails, but let's change the specs to say that you only invoke the code if you know that the string is not empty. +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
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.