はじめに
プログラミングでは、数値だけでなく文字列を扱うことも非常に多いです。ユーザーからの入力を受け取ったり、メッセージを表示したり、ファイルにデータを記録したりする際に文字列操作は欠かせません。
このステップでは、BASICで文字列を結合したり、必要な部分だけを切り出したりする方法を学びます。これらの関数をマスターすれば、文字列をより自由に扱えるようになりますよ!💪
文字列の結合(+ 演算子)
複数の文字列を繋ぎ合わせて一つの文字列にするには、+
演算子を使います。これは数値の足し算と同じ記号ですが、文字列に対して使うと結合する働きをします。
例を見てみましょう。
DIM FirstName AS STRING
DIM LastName AS STRING
DIM FullName AS STRING
FirstName = "Taro"
LastName = "Yamada"
' + 演算子で文字列を結合
FullName = FirstName + " " + LastName
PRINT FullName
実行結果:
Taro Yamada
このように、変数に入った文字列や、直接書いた文字列(リテラル)を +
で繋ぐことができます。姓と名の間にスペースを入れるために、" "
という空白文字も結合している点に注目してください。👀
⚠️ 注意: BASICの方言によっては、文字列の結合に &
演算子を使う場合もあります。また、数値と文字列を直接 +
で結合しようとするとエラーになることがあるため、数値を文字列に変換する関数(後述の STR$
など)を使う必要があります。
文字列の切り出し(LEFT$, RIGHT$, MID$)
長い文字列の中から、特定の部分だけを取り出したい場合があります。BASICにはそのための便利な関数が用意されています。
LEFT$: 文字列の左側から切り出す
LEFT$(文字列, 文字数)
は、指定した文字列の左端から、指定した文字数分だけを切り出して返します。
DIM MyString AS STRING
DIM LeftPart AS STRING
MyString = "ABCDEFGHIJ"
' 左から3文字を切り出す
LeftPart = LEFT$(MyString, 3)
PRINT LeftPart
実行結果:
ABC
RIGHT$: 文字列の右側から切り出す
RIGHT$(文字列, 文字数)
は、指定した文字列の右端から、指定した文字数分だけを切り出して返します。
DIM MyString AS STRING
DIM RightPart AS STRING
MyString = "ABCDEFGHIJ"
' 右から4文字を切り出す
RightPart = RIGHT$(MyString, 4)
PRINT RightPart
実行結果:
GHIJ
MID$: 文字列の途中から切り出す
MID$(文字列, 開始位置, 文字数)
は、指定した文字列の指定した位置から、指定した文字数分だけを切り出して返します。開始位置は文字列の左端を1番目として数えます。
DIM MyString AS STRING
DIM MidPart AS STRING
MyString = "ABCDEFGHIJ"
' 3番目の文字から5文字分を切り出す
MidPart = MID$(MyString, 3, 5)
PRINT MidPart
実行結果:
CDEFG
MID$
関数は、最後の引数である「文字数」を省略することもできます。省略した場合、開始位置から文字列の最後までが切り出されます。
DIM MyString AS STRING
DIM MidPartToEnd AS STRING
MyString = "ABCDEFGHIJ"
' 6番目の文字から最後までを切り出す
MidPartToEnd = MID$(MyString, 6)
PRINT MidPartToEnd
実行結果:
FGHIJ
💡 ヒント: これらの関数名の最後についている $
記号は、その関数が文字列を返すことを示す、古いBASICの名残です。最近のBASIC(FreeBASICなど)では、$
がなくても動作することが多いですが、互換性のために付けておくのが無難です。
応用例:郵便番号から市外局番を取り出す
これらの関数を組み合わせると、様々な文字列処理が可能です。例えば、日本の郵便番号(例: “100-0001″)から最初の3桁を取り出してみましょう。
DIM ZipCode AS STRING
DIM FirstThree AS STRING
INPUT "郵便番号を入力してください (例: 100-0001): ", ZipCode
' LEFT$を使って最初の3文字を取り出す
FirstThree = LEFT$(ZipCode, 3)
PRINT "最初の3桁は "; FirstThree; " です。"
もし、ハイフン(-)の位置が分かっているなら、MID$
を使ってハイフン以降の部分を取り出すこともできますね。
まとめ
今回は、BASICで文字列を操作する基本的な方法として、以下の内容を学びました。
- 文字列の結合:
+
演算子 - 文字列の切り出し(左から):
LEFT$
関数 - 文字列の切り出し(右から):
RIGHT$
関数 - 文字列の切り出し(途中から):
MID$
関数
これらの関数は、テキストデータを扱うプログラムを作る上で非常に重要です。しっかり使い方を覚えて、色々な場面で活用してみてください!🎉
次のステップでは、数値と文字列を相互に変換する方法 (STR$
, VAL
) を学びます。お楽しみに!
コメント