[総目次] [カテゴリ] [前]

INSTR - [文字列]

[次] [次カテゴリ] [索 引]

INSTR

… 文字列1内に文字列2のある位置を取得

書  式

INSTR(文字列1,文字列2)
 文字列1: 検索対象の文字列
 文字列2: 検索文字列

説  明

文字列1内で文字列2を検索して、見つかった場合は先頭からの位置を返します。位置は、半角でカウントした文字数を表す数値が返ります。見つからなかった場合は、0が返ります。


注意事項

このコマンドは数値が返るため、ほかの文字列関数内でも使用できます。


関連項目

LEFTMIDRIGHTLEN


サンプル

(サンプル 1)
REM 944BASIC 'INSTR サンプル'
A='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
*START
 PRINT 'A-Zのアルファベット(大文字)を入力'
 INPUT B,1,3
 C=INSTR(A,B)
 IF C THEN PRINT B;: PRINT 'は、アルファベットの';:PRINT C;:PRINT '番目の文字です。' ELSE PRINT '半角英大文字で入力してください。'
 PRINT 'PUSH KEY'
KEYWAIT
B='':CLS
GOTO *START

(サンプル 2)
REM 944BASIC 'INSTR サンプル2'
REM デリミタで文字列を切りわける例
A='123;あいう;4567;ABC;89;わをん'
DLM=';'
*LOOP
 L=LEN(A)
 C=INSTR(A,DLM): REM ; のある位置
 REM 0の場合、残りの文字列を表示して
 REM ループを抜ける
 IF C=0 THEN PRINT A:GOTO *EXITLOOP
 REM  ; の1つ前までを切り出す
 B=MID(A,1,C-1): PRINT B
 REM 表示が済んだ部分は切り詰める
 A=MID(A,C+1,L-C)
GOTO *LOOP
*EXITLOOP
KEYWAIT
END


[総目次] [カテゴリ] [前]

INSTR - [文字列]

[次] [次カテゴリ] [索 引]