文字列 【character string】 ストリング

概要

文字列(character string)とは、文字を並べたもの。コンピュータ上では、数値など他の形式のデータと区別して、文字の並びを表すデータを文字列という。

プログラミング言語データベース管理システムDBMS)、表計算ソフトなどで用いられる情報データの表現形式の一つで、文字を表すデータが一列に並んだデータ列のことを文字列データという。

コンピュータ上では文字データ中の空白や改行も特殊な文字の一種(空白文字、改行文字)とされるため、これらを含んでいても全体を単一の文字列として扱うことがある。また、何も文字が存在しない状態を「空文字列」(長さ0の文字列)として文字列の一種として扱う場合もある。プログラム上の文字列データは日常的な意味での「文字が並んだもの」から想像されるものとは若干の違いがある。

文字列と文字コード

コンピュータ内部ではすべてのデータは2進数の値の並び(ビット列)として表現されるため、文字も内部的には何らかのビット列のパターンに対応付けて表現される。どのビットパターンがどの文字を表しているかを定めた規約を「文字コード」と呼び、様々な種類がある。

同じ文字でも文字コードが異なれば対応するビット列も異なるため、ある文字コードで書かれた文字列データを別のコードに従って解釈してしまうと、元とはまったく異なる文字列に変換されてしまう「文字化け」が発生する(文字化けはデータ自体の棄損など他の要因でも生じる)。

文字列とデータ型

文字列データの仕様や扱い方はデータベース管理システムプログラミング言語によって異なり、固定長可変長か、1バイト文字のみか多バイト文字も格納可能かといった違いがある。一つのシステムにこれらの仕様が異なるいくつかのデータ型が用意されていることもある。

比較的新しい設計の言語では言語仕様に最初から組み込まれたプリミティブデータ型(組み込みデータ型)として「文字列型」(String型Text型など)が用意されていることが多い。C言語の文字型char型)の配列のように、文字列型が存在せず他のデータ型データ構造を組み合わせて文字列を格納する言語もある。

文字列型が用意されている言語では標準で文字列を操作するための関数(文字列関数)や、String型など専用のクラスが用意されていることが多い。文字列の連結や分割、指定位置から指定文字数の取り出しや挿入、文字列の検索や置換などの機能が提供される。

(2024.3.13更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。