空白文字【whitespace character】
概要

画面上で何もない隙間(空白)として表される文字で、狭義にはASCII文字コードに用意された半角スペースや、日本語文字コードおよびUnicodeに用意された全角スペースを指す。これらは一文字分の何もない空白を表示するもので、文字と文字の間に挟んで単語の区切りなどを示すのによく用いられる。
タブ文字は一定幅の位置へ次の文字の表示位置を移動する特殊な制御文字で、プログラムのソースコードのインデントやテキストの桁揃えなどを行うことができる。改行文字は文章を改行して次行の先頭から次の文字を表示する。広義には、こうした表示する実体を持たない様々な制御用の文字も含めて空白文字と呼ぶことがある。
Unicodeにはこの他にも複数の表示実体を持たない文字が定義されている。「ノーブレークスペース」(U+00A0)は通常のスペース文字と同じ一文字分の空白だが、その位置で行を折り返されない制約を課す文字で、HTMLの文字実体参照では「 」がこれに相当する。「ゼロ幅スペース」(U+200B)は幅がゼロで不可視だが、単語の区切り位置のヒントとして使われる。HTMLでは「­」に当たる。
プログラミングでは空白文字の扱いが言語によって異なる。多くの言語では、変数名や演算子など最小の言語要素(トークン)の区切り文字として機能し、余分な空白や連続した空白は無視される。Pythonでは各行の先頭のスペース数(インデントの位置)がブロック構造の括りを決定するという構文上の意味を持つが、このような仕様の言語は稀で、ほとんどの言語では単なる区切り文字以上の意味や機能はない。