Go言語でのバッククォート(“)とダブルクォート(“)の違いと使い分けを解説。

今回はプログラミングをGo言語から学習し始めた人に向けた記事です。

バッククオートとダブルクォートの特徴と使い分けについてです。

要するにこの2つの違いは改行を活かすか、無視するかです。

それではさっそく解説いくぅ!

Go言語のバッククオート

Go言語のバッククォートは生の文字列リテラルを表すために使われます。

まぁ、Goに限らず他の言語でもだいたい同じだと思います。

生の文字列リテラルとは、エスケープシーケンスや特殊な文字を含まない文字列のことです。バッククォートで囲まれた文字列は、そのままの形で出力されます。

例えば、以下のコードではs1とs2は同じ内容ですがs1はバッククォートで囲まれているので、改行やタブなどがそのまま表示されます。

s1 := `Hello,
world!
This is a raw string literal.`
s2 := "Hello,\nworld!\nThis is a raw string literal."
fmt.Println(s1)
fmt.Println(s2)

 

Go言語のダブルクォート(ダブルクォーテーション)

ダブルクォートは、通常の文字列リテラルを表すために使われます。

通常の文字列リテラルとは、エスケープシーケンスや特殊な文字を含むことができる文字列のことです。ダブルクォートで囲まれた文字列は、エスケープシーケンスや特殊な文字が解釈されて出力されます。

これも他の言語でもだいたい同じ仕様です。

以下のサンプルコードでは、s3とs4は同じ内容を持ちますが、s3はダブルクォートで囲まれているので、\nや\tなどが改行やタブとして表示されます。

s3 := "Hello,\nworld!\nThis is a normal string literal."
s4 := `Hello,
world!
This is a normal string literal.`
fmt.Println(s3)
fmt.Println(s4)

 

Go言語の初学者のための関連記事