scan函数用法详解


scan函数: scan(s,n,"char")表示从字串string中以char为分隔符提取第n个字串

功能(function):从字符表达式s中搜取给定的n个单词
语法(syntax)
1.scan(s,n) n为正数时,从字符s末尾提取n个字符
2.scan(s,n) n为负数时,从字符s开始提取n个字符
3.scan(s,n<,list-of-delimiters>)
如果指定分隔符,则只会按照该分隔符提取。
如果不指定,则按照常用的分隔符拆分,默认分隔符为:空格 . < ( + & ! $ *) ; ^ - / , % | 等之一或组合

注意事项:
1.如果缺失指定的生成变量的长度,系统默认长度为200.
2.如果|n|=0或大于字符s的长度,则该函数返回空格。

例如:

data a;
arg='ABC.DEF(X=Y)';
word=scan(arg,3);     /*输出X=Y*/
put word;
run;
 
data b;
arg='ABC.DEF(X=Y)';
word=scan(arg,-3);    /*输出ABC*/
put word;
run;
 
data c;
arg='ABC.DEF(X=Y)';
word=scan(arg,-20);    /*输出为空*/
put word;
run;
 
data d;
input str $ & 22.;
a=scan(str,1,' ');
b=scan(str,2,' ');
put a b ;              /*abcd efghijklmn */
cards;
abcd efghijklmn 
;
run;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM