SCAN
copyright

green dotSCAN

書式 SCAN(STRING,SET[,BACK])
機能 文字列STRINGの中に文字列SETに含まれる文字が含まれているとき その開始文字位置を求める。文字が含まれていなければ0を返す。
論理値BACKが真で指定されているときは、最も右にある文字の 開始文字位置を求める。
引数
STRING:文字型
SET :文字列STRINGと同じ種別型パラメタの文字型
BACK
(省略可能)
:論理型
戻り値 型、種別型パラメタは基本整数型である。

green dotサンプルプログラム

文字列の中に含まれる文字位置を探す。
    CHARACTER (LEN=10) :: a='12345ABCDB'
    CHARACTER (LEN=1)  :: b='B'
    INTEGER :: i,j,k,m
    i=SCAN(a,b)             ! 'B'は7番目にある
    j=SCAN(a,b,.TRUE.)      ! 'B'を右から探すと10番にある
    k=SCAN(a,'X')           ! 'X'はふくまれていない      
    m=SCAN('SAKURA','FUJI') ! 'U'は4番目にある
    WRITE(*,*) i,j,k,m

実行例
7 10 0 4
line-end