| 4D v18Find in array | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v18
 Find in array 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Find in array ( array ; value {; start} ) -> 戻り値 | ||||||||
| 引数 | 型 | 説明 | ||||||
| array | 配列 |   | 検索を行う配列 | |||||
| value | 式 |   | 配列タイプと同じタイプの検索値 | |||||
| start | 倍長整数 |   | 検索を開始する配列要素番号 | |||||
| 戻り値 | 倍長整数 |   | 検索値が見つかった最初の要素番号 | |||||
Find in array コマンドは、arrayから引数valueと同じものを検索し、最初に発見された要素の番号を返します。
Find in array コマンドは、タイプがテキスト、文字列、数値、日付、ポインタ、ブールの配列に使用できます。arrayタイプとvalueのタイプは、必ず同じにしてください。
value 引数の値は、検索する要素と完全に一致している必要があります(等号演算子と同じ同じルールです。比較演算子参照)。同じ値を発見できない場合、Find in array コマンドは-1を返します。
startを指定すると、その番号の要素から検索を始めます。start引数を指定しない場合、コマンドは第1要素から検索を開始します。
以下のプロジェクトメソッドは、文字列またはテキスト配列のポインタを引数として受け、配列から空の要素をすべて削除します:
  ` CLEAN UP ARRAY プロジェクトメソッド
  ` CLEAN UP ARRAY (ポインタ)
  ` CLEAN UP ARRAY (->テキストまたは文字配列)
 
 C_POINTER($1)
 REPEAT
    $vlElem:=Find in array($1->;"")
    If($vlElem>0)
       DELETE FROM ARRAY($1->;$vlElem)
    End if
 Until($vlElem<0)このプロジェクトメソッド実装後、以下のように記述できます:
 ARRAY TEXT(atSomeValues;...)
  ` ...
  ` 配列を使用した処理を行う
  ` ...
  ` 空文字の要素を削除する
 CLEAN UP ARRAY(->atSomeValues)次のプロジェクトメソッドは、最初の引数で渡した配列(ポインタ指定)中、第二引数で渡した変数やフィールド(ポインタ指定)の値に一致する最初の要素を選択します:
  // SELECT ELEMENT プロジェクトメソッド
  // SELECT ELEMENT (ポインタ; ポインタ)
  // SELECT ELEMENT ( ->テキストまたは文字配列; -> テキストまたは文字変数またはフィールド)
 
 $1->:=Find in array($1->;$2->)
 If($1->=-1)
    $1->:=0 // 値が要素中に見つからない場合、要素を選択しない
 End ifこのプロジェクトメソッド実装後、以下のように記述できます:
  // asGender ポップアップメニュオブジェクトメソッド
 Case of
    :(Form event code=On Load)
       SELECT ELEMENT(->asGender;->[People]Gender)
 
 End case注: この例では配列の選択された要素を使用します。選択された要素は、配列内の要素数が32,767個を超える場合には意味をなさない点に注意して下さい(配列とフォームオブジェクトを参照して下さい)。この場合、Find in arrayの結果を保存するためには倍長整数変数を使用する必要があります。
									Count in array
									
									DELETE FROM ARRAY
									
									Find in sorted array
									
									INSERT IN ARRAY
									
									Size of array
									
	プロダクト: 4D
	テーマ: 配列
	番号: 
        230
        
        
        
	
	初出: < 4D v6
	ランゲージリファレンス ( 4D v18)
	
	
	
 コメントを追加
コメントを追加