|
Couple of thoughts (in ILE RPG pseudocode)
D SlashArray 2 B 0 Dim(40)
D BlankArray 2 B 0 Dim(40)
D NonStandardName...
D S 40 A Inz('LAST SUR/FIRST MID/')
C '/' Scan NonStandardName SlashArray 30
* After this line executes, SlashArray will look like this 09 19 __ __ __ __ __ __ __ . . . . .
in other words, the Scan found a '/' at position 9 & 19.
C ' ' Scan NonStandardName BlankArray 31
* After this line executes, BlankArray will look like this 05 15 __ __ __ __ __ __ __ . . . . .
in other words, the Scan found a ' ' at position 5 & 15.
Therefore, several things are known. We can tell if the are 2 slashes (assumed correct format) by saying, If SlashArray(2) > *Zeros. We can tell if the are 2 blanks (assumed correct format) by saying, If BlankArray(2) > *Zeros. If there are two slashes and two blanks, we can AssUme the correct format. It's then pretty easy to extract the parts. You can extract the parts as follows:
D Eval FirstName = %SubSt(NonStandardName : 1 : BlankArray(1) - 1)
D Eval SirName = %SubSt(NonStandardName : BlankArray(1) + 1 :
D SlashArray(1) - BlankArray(1) + 1)
* In other words SirName = substring of NonStandardName, starting at 6 for a length of 3
I'll let you figure out the First & Mid. Any questions, drop me an email.
[Schlemme, Michael C.]
---Original Message-----
From: bill totz [SMTP:robsurge@hotmail.com]
Sent: Tuesday, March 07, 2000 2:21 PM
To: RPG400-L@midrange.com
Subject: Name Parse
Hello List
We have been given the unfortunate task of parsing a non standard naming
format and breaking it down into the serparte parts of first middle last and
surname (if one is present.)
The name field is a 40 byte field formatted "LAST SUR/FIRST MID/"
I basically just want 4 fields back containing the first middle last and
surname(if present).
We are attempting to accomplish this by moving the string into an array, and
using an index to count through the array a byte at a time and setting
indicators when certain conditions are met, such as a blank, or a '/'.
However, my partner and I are incredibly new to the RPG world, and are
getting lost in the complexity of writing this routine. We are devout
followers of this list and would appreciate any available help, so that we
can keep our jobs. :)
______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-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-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.