文字式から単語として指定した文字列を検索し、単語の最初の文字の位置を返します。
| カテゴリ: | 文字 |
| 制限事項: | この関数は、I18Nレベル0準拠しており、SBCSデータ向けに設計されています。この関数をDBCSまたはMBCSデータの処理に使用しないでください。 |
|
SASステートメント
|
結果
|
|---|---|
s='asdf adog dog'; p='dog '; x=indexw(s, p); put x; |
11 |
s='abcdef x=y'; p='def'; x=indexw(s, p); put x; |
0 |
x="abc,def@ xyz"; abc=indexw(x, " abc ", "@"); put abc; |
0 |
x="abc,def@ xyz"; comma=indexw(x, ",", "@"); put comma; |
0 |
x='abc,def% xyz'; def=indexw(x, 'def', '%,'); put def; |
5 |
x="abc,def@ xyz"; at=indexw(x, "@", "@"); put at; |
0 |
x="abc,def@ xyz"; xyz=indexw(x, " xyz", "@"); put xyz; |
9 |
c=indexw(trimn(' '), ' '); |
1 |
g=indexw(' x y ', trimn(' ')); |
0 |
data temp;
infile datalines;
input name $12.;
datalines;
abcdef
abcdef
;
run;
data temp2;
set temp;
format name_list $1024.;
retain name_list ' ';
exists=indexw(name_list, trim(name), ';');
if exists=0 then do
name_list=catx(';', name_list, name)||';' ;
name_count +1;
put '-------------------------------';
put exists= ;
put name_list= ;
put name_count= ;
end;
run;------------------------------- exists=0 name_list=abcdef; name_count=1
x=indexw('ABCDEF;XYZ', 'ABCDE', ';');ゼロ以外の結果を返す第2引数の値はABCDEFとXYZだけです。data temp;
infile datalines;
input name $12.;
datalines;
abcdef
abcdef
;
run;
data temp2;
set temp;
format name_list $1024.;
retain name_list ' ';
exists=indexw(name_list, name, ' ');
if exists=0 then do
name_list=catx(' ', name_list, name) ;
name_count +1;
put '-------------------------------';
put exists= ;
put name_list= ;
put name_count= ;
end;
run;------------------------------- exists=0 name_list=abcdef name_count=1