01-04-2018 12:54 PM
I have a text file that is not delimited and my name field looks like this:
The field is $50. as name AND there are four spaces in between the firstname and the lastname
How do I parse it to give me FIRST NAME AND LAST NAME
Thank you in advance
01-04-2018 01:42 PM
thanks I did try what you said and also this and both did not work
first_nm=scan(r_name,1,' '); last_nm=scan(r_name,2,' ');
01-04-2018 01:53 PM
01-04-2018 12:59 PM
If both first and last name are guaranteed not to have any spaces, you can just use SCAN.
If you specify 4 spaces because you want to treat single spaces as non-delimiters, then you have a few options. The easiest is to use DLMSTR as ' ', I think.
data want; length first last $50; infile datalines dlmstr=' '; input first $ last $; ;;;; datalines; JOHN DOE MARY ELIZABETH SMITH JACKIE DOE SOPHIE DOE ;;;; run;
But if you have other fields and want to read them as fixed width, you could read into NAME, then FIND ' ' and then use SUBSTR to parse it, or a perl regular expression.