ユーザ用ツール


reference:文字列操作

文字列操作

文字列操作

部分文字列の配列型参照について

文字列変数がある場合、[]を使用することで、そのうちの1文字を取得したり指定位置の文字を置換できる。

A$="12345" 
A$[3] → "4" 
A$[3]="ABC" → "123ABC5" 

ASC(文字列)

指定された文字列の先頭文字コードを取得する

引数

文字列

調べたい文字が先頭に入った文字列

返値

指定された文字の文字コード(UTF-16)

A=ASC("A")
X=ASC("XYZ")

CHR$(文字コード)

指定された文字コードから文字を返す

引数

文字コード

文字ごとに対応する番号(UTF-16)

返値

文字コードに対応する1文字の文字列

S$=CHR$(65)

VAL(文字列)

文字列から数値を得る

引数

文字列

数字を表す文字列("123"など)

返値

文字列から解釈された数値

A=VAL("123")
F=VAL("-12.56")

STR$(数値[,桁数])

数値を文字列に変換する

引数

数値

文字列に変換したい数値

桁数

・指定桁数で右揃えしたい場合に指定:0~63
・数値の桁数が指定桁数より大きい場合指定を無視する
・0を指定するか省略した場合桁揃えをしない

返値

変換された文字列(123→"123")

S$=STR$(123)

HEX$(数値[,桁数])

数値を16進数文字列に変換する

引数

数値

16進数文字列に変換したい数値(小数部は切り捨て)

桁数

・出力する16進数文字列の桁数:0~8
・指定すると先頭に0を埋めた文字列を返す
・0を指定するか省略した場合先頭に0を埋めない

返値

変換された16進文字列(255→FF)

S$=HEX$(65535,4)

BIN$(数値[,桁数])

数値をの2進数文字列に変換する

引数

数値

2進数文字列に変換したい数値(小数部は切り捨て)

桁数

・出力する2進数文字列の桁数:0~32
・指定すると先頭に0を埋めた文字列を返す
・0を指定するか省略すると先頭に0を埋めない

返値

変換された2進文字列(255→11111111)

S$=BIN$(65535,16)

FORMAT$(書式文字列,値,…)

表示書式を使って値を整形し文字列化する

引数

書式文字列(複数列挙可能)

%S 文字列変数の内容を出力
%D 整数を10進出力
%X 整数を16進出力
%F 実数を出力
%B 整数を2進出力
%% %を1文字出力

書式文字列の補助指定

%のあとに次の補助指定を行うことにより出力を整形

・桁数指定:桁数の数値を指定(%8D,%4X)
・小数の桁数指定:全体桁数.小数部の桁数(%8.2F)
・空白埋め:空白文字+桁数を指定(% 4D→"   0")
・ゼロ埋め:0+桁数を指定(%08D→"00000000")
・左寄せ:-記号+桁数を指定(%-8D)
・+符号表示:+記号+桁数を指定(%+8D)

・整形する元の値
・書式内で指定された要素分カンマ(,)で区切って列挙

返値

生成された文字列

S$=FORMAT$("%06D",A)

LEN(文字列または配列)

文字列の文字数、または配列の要素数を得る

引数

文字列の場合

文字数を調べたい文字列

配列の場合

要素数を調べたい配列

返値

・文字列のとき:文字数(すべての文字を1文字として数える)
・配列のとき:要素数

A=LEN("ABC123")

LAST(文字列または配列)

文字列または配列の末尾の位置を返す

引数

文字列または配列

末尾位置を調べたい文字列、または配列

返値

末尾の位置
・文字列、配列ともLEN関数の返値から1を引いた値を返す

DIM X[10]
FOR I=0 TO LAST(X)
 X[I]=I
NEXT

MID$(文字列,開始位置,文字数)

文字列の指定位置から指定数分の文字列を得る

引数

文字列

元になる文字列

開始位置

取得文字列の開始位置(文字単位)

文字数

取得文字列の文字数

返値

取得した文字列

S$=MID$("ABC",0,2)

LEFT$(文字列,文字数)

文字列の先頭から指定数分の文字列を得る

引数

文字列

元になる文字列

文字数

取得文字列の文字数

返値

取得した文字列

S$=LEFT$("ABC",2)

RIGHT$(文字列,文字数)

文字列の末端から指定数分の文字列を得る

引数

文字列

元になる文字列

文字数

取得文字列の文字数

返値

取得した文字列

S$=RIGHT$("ABC",2)

INSTR([開始位置,]元文字列,検索する文字列)

文字列内から対象文字列を検索する

引数

開始位置

・元文字列内で検索を開始する位置(0~文字単位)
・省略すると先頭から検索

元文字列

元になる文字列

検索する文字列

元文字列の中から検索したい文字列

返値

・見つかった場合: 文字列内の位置(文字単位)
・見つからなかった場合:-1

A=INSTR(0,"ABC","B")

SUBST$(元文字列,開始位置,[文字数,]置換文字列)

文字列の一部を置き換える

引数

元文字列

元になる文字列

開始位置

置き換えの開始位置(0~文字数-1)

文字数

・置き換えられる文字数
・省略した場合、開始位置以降の全文字を置換文字列で置き換える

置換文字列

置き換える文字列
開始位置から文字数分をこの文字列で置き換える

返値

置き換えが完了した文字列

A$=SUBST$("ABC",0,2,"XY")

DATE$()

現在の日付を文字列として返す

返値

現在の日付文字列
・書式は"西暦/月/日"

TIME$()

現在の時刻を文字列として返す

返値

現在の時刻文字列
・書式は"時:分:秒"

reference/文字列操作.txt · 最終更新: 2019/06/14 20:07 (外部編集)

ページ用ツール