この関数は、ベクトルvs内の文字列パターンstrを検索し、見つかった場合は、同じインデックスを持つベクトルvrefから値を返します。ベクトルvrefには数値または文字列値を含めることができます。デフォルトでは、この関数はvsで文字列全体を検索します(option = 2)。一致するものがなく、vrefが数値の場合、関数は欠損値("--")を返します。vrefに文字列が含まれている場合、空の文字列が返されます。
この関数はoption =0 または =1を使用して最も近い一致を返しますが、Lookup()はワイルドカード文字をサポートしていません。
この関数は、ベクトルvd内の数値ddも検索し、同じインデックスを持つベクトルvrefから値を返します。デフォルトでは、関数はvdに最も近い値を検索します (option = 2)。option = 0の場合、ddより小さい最も近い値を検索します。option = 1の場合、ddよりも大きい最も近い値を探します。
vrefに数値が含まれている場合、
double Lookup(string str$, vector<string> vs, vector vref[, int option, int Case])
vrefに文字列値が含まれている場合、
string Lookup(string str$, vector<string> vs, vector<string> vref[, int option, int Case])$
数値ベクトルvdを検索する場合、
double Lookup(double dd, vector vd, vector vref[, int option, int Case])
str
vs
dd
vd
vref
option
Case
vsにstrが見つかった場合は、同じ行インデックスのベクトルvrefに値を返します。
option = 2でstrが見つからなかった場合は、空の文字列または欠損値を返します。
option = 0でstrが見つからなかった場合は、strに最も近い小さい値に対応する値を返します。strより小さい値が存在しない場合は、欠損値(数値)または空の文字列(文字列)を返します。
option = 1でstrが見つからなかった場合は、strに最も近い大きい値に対応する値を返します。strより大きな値が存在しない場合は、欠損値(数値)または空の文字列(文字列)を返します。
周期表Book1で元素を検索し、対応する原子量を指定します。
上記のBook1をアクティブにして、LabTalkスクリプトを使用してシンボルを検索し、対応する名前を出力します。
range symbol=col(D); range name=1!col(C); string str1$ = Lookup("Li", symbol, name)$; str1$=; //リチウムが出力される