SCAN

要素別処理組込み関数 (総称):文字列を走査して,文字集合中に任意の文字があるかどうかを判定します。

形式

result = SCAN (string, set [, back] [, kind])

string
(入力) 文字型。

set
(入力) string と同じ種別パラメタを持つ文字型。

back
(入力) 論理型。

kind
(省略可能,入力) スカラ整数初期値式。

結果

結果の型は基本整数型です。kind が存在する場合,結果の種別パラメタは kind によって指定されたものになります。kind が存在しなければ,結果のの種別パラメタは基本整数型の種別パラメタになります。プロセッサーが結果の種別で結果の値を表現できない場合,結果は不定になります。

back が省略され (または偽の値が指定されており),stringset に含まれている文字を少なくとも 1 つ含んでいる場合,結果の値は set に含まれている string 中の一番左の文字の位置になります。

back が存在して真の値が指定されており,stringset に含まれている文字を少なくとも 1 つ含んでいる場合,結果の値は,set に含まれているstring 中の一番右の文字の位置になります。

stringset に含まれている文字を 1 つも含んでいないか,string または set の長さがゼロの場合,結果の値はゼロです。

互換性

CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB

関連情報

VERIFY

SCAN ('ASTRING', 'ST') の値は 2 です。

SCAN ('ASTRING', 'ST', BACK=.TRUE.) の値は 3 です。

SCAN ('ASTRING', 'CD') の値は 0 です。

以下に他の例を示します。

	INTEGER i
	INTEGER array(2)
	i = SCAN ('FORTRAN', 'TR')			! 3 を返します。
	i = SCAN ('FORTRAN', 'TR', BACK = .TRUE.)	! 5 を返します。
	i = SCAN ('FORTRAN', 'GHA')			! 6 を返します。
	i = SCAN ('FORTRAN', 'ora')			! 0 を返します。
	array = SCAN ((/'FORTRAN','VISUALC'/),(/'A', 'A'/)) ! (6, 5) を返します。

	! 配列で SCAN を使う場合,文字要素は同じ長さでなければ
	! ならないことに注意してください。文字定数として使う場合,
	! 同じ長さにするために空白で埋められます。
	! 例:
	array = SCAN ((/'FORTRAN','MASM '/),(/'A', 'A'/)) ! (6, 2) を返します。
	END