I am trying to use:
infile dlm='@@' dsd missover;
to copy a SAS code to a new location, but it truncated email address (there is an email address e.g. [email protected] in the SAS code), and only the username 'ABC' show up in the new code, and the '@xyz.com' part was truncated.
So i excluded the infile option
dlm='@@'
re-run the code, and the email address was read correctly, however some regular lines are missing.
Just wonder if some infile options I can try to read all the lines correctly, also read the email address correctly too.
thanks!
an example:
*91,87,95 [email protected] test hudpiwaHUOV0
97,,92% bmno[aej0i34hmbtgkoersw934bnrtui9sdobn vnbud9rw0aq598vnfjipa
njuio9rpep0snhtui9es000
from="[email protected]"
fjsui123,1,1 0 ;
data a;
infile "/.../email.xlsx"
missover dsd lrecl=32767 firstobs=1;* dlm='@'; * delimiter = '@@';
informat all $char50. ;
input all $ ;
pk=_n_;
run;
Looks like your data is using space as the delimiter.
Let's convert your example text into a file so we have something to test against.
Now we can read the file and parse it into the individual "words".
Results:
If you add the DSD option to the INFILE statement you will get more words since adjacent (or leading) spaces will indicate an empty word.