前のページ|次のページ

WHICHC関数

第1引数に等しい文字値を検索し、最初に一致した値のインデックスを返します。

カテゴリ: 検索

構文

WHICHC(string, value-1 <, value-2, ...>)

必須引数

string

検索対象の値を指定する文字定数、変数または式です。

value

検索条件の値を指定する文字定数、変数または式です。

詳細

WHICHC関数は、第2以降の引数から第1引数に等しい値を検索し、最初に一致した値のインデックスを返します。
stringが欠損している場合、WHICHCは欠損値を返します。欠損していない場合、WHICHCはstringの値とvalue-1value-2などを順番に比較します。引数value-istringと等しい場合、WHICHCは正の整数iを返します。stringが後続のどの引数とも等しくない場合、WHICHCは0を返します。
検索条件の値が頻繁に変更される場合にWHICHCを使用すると便利です。検索条件の値を変更せずに多数の検索を実行する必要がある場合、HASHオブジェクトを使用すると効率が上がります。

次の例では、第1引数の配列を検索し、最初に一致した値のインデックスを返します。
data _null_;
   array fruit (*) $12 fruit1-fruit3 ('watermelon' 'apple' 'banana');
   x1=whichc('watermelon', of fruit[*]);
   x2=whichc('banana', of fruit[*]);
   x3=whichc('orange', of fruit[*]);
   put x1= / x2= / x3=;
run;
次の出力がログに書き込まれます。
x1=1 x2=3 x3=0

関連項目:

関数:
その他のリファレンス:
Using the Hash Object (SAS言語リファレンス: 解説編)
The IN Operator in Character Comparisons (SAS言語リファレンス: 解説編)
前のページ|次のページ|ページの先頭へ