文字列(String)とは、プログラミングにおいて、文字がいくつも連なって1つのまとまりとして扱われるデータのことです。「こんにちは」や「Tokyo123」のように、文字や数字、記号を組み合わせた文章や単語を、プログラムの中で扱うための基本的なデータの種類(型)のひとつです。
現実世界に例えると、文字列はビーズを1本の糸に通して作ったネックレスのようなものです。1粒1粒のビーズ(文字)が順番に並んでつながることで、初めて意味のある1本の作品(文字列)になります。
文字列の作り方
多くのプログラミング言語では、文字や単語をシングルクォート(’)またはダブルクォート(”)で囲むことで、それが文字列であることをコンピューターに伝えます。囲まれていない数字とは区別され、コンピューターはそれを「計算する数」ではなく「表示する文字」として扱います。
数値との違い
| 型 | 例 | 「1」+「1」の結果 |
|---|---|---|
| 数値 | 1 | 2(足し算) |
| 文字列 | “1” | 11(文字のつなぎ合わせ) |
文字列の主な操作
プログラムでは、文字列同士をつなげる「結合」、文字数を調べる「長さの取得」、一部分だけを取り出す「切り出し」といった操作がよく行われます。これらの操作を組み合わせることで、名前と挨拶文をつなげたり、入力内容をチェックしたりする処理が実現できます。
エスケープ文字との関係
文字列の中で改行やタブ、クォート自体を表現したい場合には、「\n」や「\t」のような特別な組み合わせ(エスケープ文字)が使われます。文字列の区切り記号と紛らわしい文字を、正しく文字列の一部として扱うための工夫です。
文字コードとの関係
コンピューターの内部では、文字列を構成する1文字1文字が、文字コードという数値に変換されて処理されています。私たちには「あ」や「A」という文字に見えていても、コンピューター内部では対応する番号として扱われている仕組みです。
イミュータブル(不変)という性質
言語によっては、一度作成した文字列の中身を、あとから直接書き換えることができない「イミュータブル(不変)」という性質を持つ場合があります。文字列を変更したいときは、新しい文字列を新たに作り直す形で処理されます。
配列としての一面
文字列は、1文字ずつが順番に並んだ「配列」のような構造として扱える言語も多くあります。先頭から何番目の文字かを指定して取り出したり、順番に1文字ずつ処理したりする操作は、この性質を利用しています。
実務でよく使う場面
ユーザーが入力したメールアドレスの形式を確認したり、複数の項目をつなげて1つのメッセージを作ったりするなど、文字列の操作はあらゆるプログラムの中で日常的に登場します。プログラミングの基礎中の基礎といえる存在です。


コメント