タグ: Lotus Script

  • [言語比較]Const : 変更されない値に名前を設定

    [言語比較]Const : 変更されない値に名前を設定

    C#

    Const 名前 = 値;

    Lotus Script 言語, VBScript 言語

    Const 名前 = 値

    注意
    設定できる値部分には、計算式や変数を書くことができません
    Const に限りませんが、標準で Lotus Script は Private になり、VBScript は Public になります

  • [言語比較]List,Listtag : キーと値のペアで記憶する連想配列(辞書、ディクショナリー)

    [言語比較]List,Listtag : キーと値のペアで記憶する連想配列(辞書、ディクショナリー)

    Lotus Script 言語

    • 宣言 : Dim 変数名 List As 型
    • 辞書? : True または False = IsList (変数名)
    • キーを追加 : 変数名 (キー) = 値
    • 既にキーが存在する? : True または False = IsElement (変数名 (キー))
    • 値を取り出す : 値 = 変数名 (キー)
    • すべて取り出す :
    Forall 参照変数 In 変数
     キー = ListTag (参照変数)
     値 = 参照変数
    End Forall
     ※参照変数は Forall で有効な特別な変数で Dim で宣言しません
     ※参照変数を更新すると In に続く変数の値が更新されます

    Forall : 値の数だけ繰り返します

    • キーを削除 : Erase 変数名 (キー)
    • キーをすべて削除 : Erase 変数名
       ※キーは文字値になります
       ※一般的に List は配列よりも多くの値を保存できます

    VbScript 言語

    • 言語として連想配列の機能がありません
    • Set 変数名 = CreateObject (“Scripting.Dictionary”) として、オブジェクトで連想配列を使います

    Lotus 式言語

    連想配列の機能がありません

  • [言語比較]ArrayAppend : 値をまとめて新しい配列へ

    [言語比較]ArrayAppend : 値をまとめて新しい配列へ

    Lotus Script 言語

    • 動的配列 = ArrayAppend (配列, 単数値または配列)

    エラーになる例
    ArrayAppend (単数値, 単数値または配列)

    動的配列とは
    Lotus Script の配列は2種類あります
    ひとつは Redim で値の数を変更できる動的配列、もうひとつは値の数を変えられない静的配列です

    既存の配列に値を追加する方法
    動的配列に入る値の数を変更するには Redim Preserve 配列名 (上限値) を使用します
    初期値では下限値が 0 となっているため、上限値を 1 にすると配列の値の数は (0) と (1) の2つになります
    Preserve キーワードを忘れると、配列の値が初期化されます
    新しく増やした部分に値を入れるには 配列名 (Ubound (配列名)) = 値 とします

    VbScript 言語

    Lotus Script 言語の既存の配列に値を追加する方法でおこないます

    Lotus 式言語

    • 配列 = 単数値または配列 : 単数値または配列
  • [言語比較]Abs : 数値を符号のない絶対値へ

    [言語比較]Abs : 数値を符号のない絶対値へ

    Lotus Script 言語, VbScript 言語

    • 数値 = Abs (数値)
    • Null値 = Abs (Null値)

    エラーになる例
    Abs (複数値)
    Abs (文字値)

    Lotus 式言語

    • 数値 = @Abs (数値)
    • 数の複数値 = @Abs (数の複数値)
  • [言語比較]If : 条件によって分岐

    [言語比較]If : 条件によって分岐

    Lotus Script 言語

    If 条件式 Then
     式
    Elseif 条件式 Then
     式
    Else
     式
    End If

     ※If ~ Elseif ~ Elseif と繰り返せます
     ※Elseif Else ともに使わないことができます

    If 条件式 Goto ラベル
    ラベル:
    式
    If 条件式 Goto ラベル Else 式
    ラベル:
    式

     ※If ~ Goto ~ Else ~ は改行せずに書きます

    VbScript 言語

    If 条件式 Then
     式
    Elseif 条件式 Then
     式
    Else
     式
    End If

     ※If ~ Elseif ~ Elseif と繰り返せます
     ※Elseif Else ともに使わないことができます

    Lotus 式言語

    • @If (条件式; 式; 式);
       『条件式; 式; 』は最大99回繰り返せます
    • @V2If (条件式; 式; 式);
       ※@V2If は旧バージョン用です、上位互換がある @If に書き換えることができます
  • [言語比較]ArrayGetIndex : 配列のどこに値が含まれているか調べる

    [言語比較]ArrayGetIndex : 配列のどこに値が含まれているか調べる

    Lotus Script 言語

    • 見つかった検索値の位置 = ArrayGetIndex (配列, 検索値)
    • 見つかった検索値の位置 = ArrayGetIndex (配列, 検索値, 比較方法)
       ※文字値へ変換してから比較します

    比較方法
    0 = 大文字小文字、全角半角を区別します
    1 = 大文字小文字を区別しません
    4 = 全角半角を区別しません
    5 = 大文字小文字、全角半角を区別しません
     ※規定は 0 ですが、規定を Option Compare で変更することができます

    Lotus 式言語

    • 見つかった検索値の位置 = @Member (検索値; 配列); ‘ 見つからなかったときは 0 を返します
    • True/False = @IsMember (検索値(文字値); 配列); ‘ 見つかったとき @True を返します
    • True/False = @IsMember (検索値(配列値); 配列); ‘ 検索値がすべて見つかったとき @True を返します
    • True/False = @IsNotMember (検索値(文字値); 配列); ‘ 見つかったとき @False を返します
    • True/False = @IsNotMember (検索値(配列値); 配列); ‘ 検索値のいずれかが見つかったとき @False を返します
       ※@IsNotMember は !@IsMember と一致しません
  • [言語比較]StrToken : 区切記号で区切られた文字値の一部を拾う

    [言語比較]StrToken : 区切記号で区切られた文字値の一部を拾う

    Lotus Script 言語

    • StrToken (文字値, 区切記号, 場所)
    • StrToken (文字値, 区切記号, 場所, 比較方法)

    場所
    0 のとき 1 とみなされます
    0 より大きいとき、左から何番目か?
    0 より小さいとき、右から何番目か?

    比較方法
    0 = 大文字小文字、全角半角を区別します
    1 = 大文字小文字を区別しません
    4 = 全角半角を区別しません
    5 = 大文字小文字、全角半角を区別しません
     ※規定は 0 ですが、規定を Option Compare で変更することができます


    えおか = StrToken ({あいう,えおか,きくけ}, {,}, 2)

    Lotus 式言語

    • @Word (文字値; 区切記号; 場所);

    場所
    0 のとき 1 とみなされます
    0 より大きいとき、左から何番目か?
    0 より小さいとき、右から何番目か?

  • [言語比較]ArrayUnique : 配列から重複を取り除く

    [言語比較]ArrayUnique : 配列から重複を取り除く

    Lotus Script 言語

    • ArrayUnique (1次元配列)
    • ArrayUnique (1次元配列, 比較方法)

    比較方法
    0 = 大文字小文字、全角半角を区別します
    1 = 大文字小文字を区別しません
    4 = 全角半角を区別しません
    5 = 大文字小文字、全角半角を区別しません
     ※規定は 0 ですが、規定を Option Compare で変更することができます
     ※配列が文字列のときに比較方法を選択できます

    Lotus 式言語

    • @Unique (配列)
       ※パラメータなしの @Unique は、呼び出すたびに異なる文字列を返します

    比較方法
     ※大文字小文字を区別します

  • [言語比較]New : クラスからオブジェクトをつくる

    [言語比較]New : クラスからオブジェクトをつくる

    New : クラスからオブジェクトをつくります

    Lotus Script 言語

    • Set 変数 = New クラス名 ()
    • Set 変数 = New クラス名 (値)
    • Set 変数 = New クラス名
       ※最初に実行される New 関数は値を受け取ることができます
       ※New クラス名へ値を渡さないときは括弧を省略できます

    VbScript 言語

    • Set 変数 = New クラス名
       ※最初に実行される Class_Initialize 関数は値を受け取ることができません
       ※クラス名のうしろに括弧をつけるとエラーになります

  • [言語比較]型名を調べる

    [言語比較]型名を調べる

    値の型名を調べます

    C#
    string 型名 = 値.GetType().FullName;
    Visual Basic
    型名 = Microsoft.VisualBasic.TypeName(値) // 戻り値はString
    Lotus Script 言語
    型名 = Typename(値) // 戻り値はString