開発者ドキュメント

Goでの文字列の操作の概要

文字列は、定数または変数のいずれかである1つ以上の文字(文字、数字、記号)のシーケンスです。 Unicode で構成される文字列は不変のシーケンスであり、変更されないことを意味します。

テキストは私たちが日常生活で使用する非常に一般的な形式のデータであるため、文字列データ型はプログラミングの非常に重要な構成要素です。

このGoチュートリアルでは、文字列を作成および印刷する方法、文字列を連結および複製する方法、および文字列を変数に格納する方法について説明します。

文字列リテラル

Goでは、文字列はいずれかのバッククォート内に存在します ` (バックティックと呼ばれることもあります)または二重引用符 ". 使用する引用符に応じて、文字列の特性は異なります。

のように、バッククォートを使用する ` ```bar``` `raw文字列リテラルを作成します。 生の文字列リテラルでは、逆引用符を除いて、引用符の間に任意の文字が表示される場合があります。 生の文字列リテラルの例を次に示します。

`Say "hello" to Go!`

バックスラッシュは、生の文字列リテラル内では特別な意味はありません。 例えば、 \n 実際の文字、バックスラッシュとして表示されます \ と手紙 n. 解釈された文字列リテラルとは異なり、 \n 実際の新しい行を挿入します。

生の文字列リテラルを使用して、複数行の文字列を作成することもできます。

`Go is expressive, concise, clean, and efficient.
Its concurrency mechanisms make it easy to write programs
that get the most out of multi-core and networked machines,
while its novel type system enables flexible and modular
program construction. Go compiles quickly to machine code
yet has the convenience of garbage collection and the power
of run-time reflection. It's a fast, statically typed,
compiled language that feels like a dynamically typed,
interpreted language.`

解釈される文字列リテラルは、次のように、二重引用符で囲まれた文字シーケンスです。 "bar". 引用符内には、改行とエスケープされていない二重引用符を除いて、任意の文字が表示される場合があります。

"Say \"hello\" to Go!"

ほとんどの場合、解釈された文字列リテラルを使用します。これは、文字列内でエスケープ文字を使用できるためです。

Goで文字列がどのようにフォーマットされるかを理解したので、プログラムで文字列を印刷する方法を見てみましょう。

文字列の印刷

を使用して文字列を印刷できます fmt システムライブラリからパッケージを作成し、 Println() 関数:

fmt.Println("Let's print out this string.")
Output
Let's print out this string.

必ず import システムパッケージを使用すると、文字列を出力する簡単なプログラムは次のようになります。

package main

import "fmt"

func main() {
	fmt.Println("Let's print out this string.")
}

文字列の連結

連結は、文字列をエンドツーエンドで結合して、新しい文字列を作成することを意味します。 文字列を + オペレーター。 数字を扱うときは、 + 加算の演算子になりますが、文字列で使用する場合は結合演算子になります。

文字列リテラルを組み合わせてみましょう "Sammy""Shark" を介した連結と一緒に fmt.Println() 声明:

fmt.Println("Sammy" + "Shark")
Output
SammyShark

2つの文字列の間に空白が必要な場合は、文字列内に空白を含めることができます。 この例では、引用符の後に空白を追加します Sammy:

fmt.Println("Sammy " + "Shark")
Output
Sammy Shark

The + 2つの異なるデータ型間で演算子を使用することはできません。 例として、文字列と整数を連結することはできません。 次のように書き込もうとした場合:

fmt.Println("Sammy" + 27)

次のエラーが発生します。

Output
cannot convert "Sammy" (type untyped string) to type int invalid operation: "Sammy" + 27 (mismatched types string and int)

文字列を作成したい場合 "Sammy27"、あなたは番号を入れることによってそうすることができます 27 引用符で("27")これにより、整数ではなく文字列になります。 数字を文字列に変換して連結すると、郵便番号や電話番号を処理するときに便利です。 たとえば、国コードと市外局番の間に加算を実行したくないが、それらを一緒に維持したい場合があります。

連結によって2つ以上の文字列を組み合わせると、プログラム全体で使用できる新しい文字列が作成されます。

文字列を変数に格納する

変数は、プログラムにデータを格納するために使用できるシンボルです。 それらは、データや値を入力する空のボックスと考えることができます。 文字列はデータであるため、文字列を使用して変数を埋めることができます。 文字列を変数として宣言すると、Goプログラム全体で文字列を操作しやすくなります。

文字列を変数内に格納するには、変数を文字列に割り当てるだけです。 この場合、宣言します s 変数として:

s := "Sammy likes declaring strings."

注:他のプログラミング言語に精通している場合は、変数を次のように記述している可能性があります。 sammy. ただし、Goは短い変数名を優先します。 選択 s この場合の変数名は、Goが記述されているスタイルにより適していると見なされます。

これで変数ができました s その特定の文字列に設定すると、次のように変数を出力できます。

fmt.Println(s)

次に、次の出力を受け取ります。

Output
Sammy likes declaring strings.

変数を使用して文字列を表すことにより、使用するたびに文字列を再入力する必要がなくなり、プログラム内での文字列の操作と操作がより簡単になります。

結論

このチュートリアルでは、Goプログラミング言語での文字列データ型の操作の基本について説明しました。 文字列の作成と印刷、文字列の連結と複製、および文字列の変数への格納は、Goプログラムで文字列を使用するための基本を提供します。

モバイルバージョンを終了