- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hello Experts,
I would like to scan all the phrase after 5 space.
I have this code : Ligne2 = scan(ligne,5,'') , but as result I have only one word.
Do you know please, how to scan all phrase after 5st space ?
Thank you for your help !
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
LIGNE2 = substr(ligne, 5);
SUBSTR() will extract everything from the 5th character onwards.
SCAN() with 5, looks for 5th term with a delimiter (space). Given your stated requirements I think SUBSTR() is the correct function for you usage.
@SASdevAnneMarie wrote:
Hello Experts,
I would like to scan all the phrase after 5 space.
I have this code : Ligne2 = scan(ligne,5,'') , but as result I have only one word.
Do you know please, how to scan all phrase after 5st space ?
Thank you for your help !
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Please show us examples for the string you want to scan, and what you want to extract from them.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
@SASdevAnneMarie wrote:
Hello Experts,
I would like to scan all the phrase after 5 space.
I have this code : Ligne2 = scan(ligne,5,'') , but as result I have only one word.
Do you know please, how to scan all phrase after 5st space ?
Thank you for your help !
Scan does return ALL. It returns the nTH term.
1 data _null_; 2 line = 'one two three four five six seven'; 3 line2 = scan(line,5,' '); 4 put (line line2) (=$quote.); 5 run; line="one two three four five six seven" line2="five"
If you want the result to be "five six seven" then use CALL SCAN() and SUBSTRN().
6 data _null_; 7 line = 'one two three four five six seven'; 8 call scan(line,5,position,length,' '); 9 line2=substrn(line,position); 10 put (line line2) (=$quote.); 11 run; line="one two three four five six seven" line2="five six seven"