English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Golang 基礎チュートリアル

Golang 制御文

Golang 関数 & メソッド

Golang 構造体

Golang スライス & 配列

Golang 文字列(String)

Golang ポインタ

Golang インターフェース

Golang 并行

Golang エラ(Error)

Golang その他の雑項

Go 文字列の結合

Go言語では、文字列はUTF-8コードの不可変な任意のバイトリンク。Goの文字列では、2つまたは複数の文字列を新しい単一の文字列に追加するプロセスを連接と呼びます。Go言語で2つまたは複数の文字列を結合する最も簡単な方法は、演算子を使用することです(+)。また、連接演算子と呼ばれます。

//文字列を結合
package main
import "fmt"
func main() {
    //作成と初期化する文字列
    //varキーワードを使用
    var str1 string
    str1 = "Welcome!"
    var str2 string
    str2 = "oldtoolbag.com"
    //文字列を結合する
    //使用+演算子
    fmt.Println("新しい文字列 1: ", str1+str2)
    //作成と初期化する文字列
    //簡略宣言を使用
    str3 := "Geeks"
    str4 := "Geeks"
    //文字列を結合する
    //使用+演算子
    result := str3 + "for" + str4
    fmt.Println("新しい文字列 2: ", result)
}

出力:

新しい文字列 1: Welcome!oldtoolbag.com
新しい文字列 2: GeeksforGeeks

文字列を結合する他の方法

  • bytes.Bufferを使用して:また、bytes.BufferとWriteString()メソッドを使用して、文字列のバイトを結合して文字列を作成することもできます。これは文字パッケージで定義されています。これは不必要な文字列オブジェクトの生成を防ぎます、これは2つのまたは複数の文字列から新しい文字列を生成しないことを意味します(例えば、+演算子)。

    //WriteString()関数でbytes.Bufferを使用
    package main
    import (
        "bytes"
        "fmt"
    )
    func main() {
        //作成と初期化する文字列
        //bytes.Bufferを使用して
        // WriteString()関数
        var b bytes.Buffer
        b.WriteString("G")
        b.WriteString("e")
        b.WriteString("e")
        b.WriteString("k")
        b.WriteString("s")
        fmt.Println("文字列: ", b.String())
        b.WriteString("f")
        b.WriteString("o")
        b.WriteString("r")
        b.WriteString("G")
        b.WriteString("e")
        b.WriteString("e")
        b.WriteString("k")
        b.WriteString("s")
        fmt.Println("文字列: ", b.String())
    }

    出力:

    文字列:  Geeks
    文字列:  w3codebox
  • Sprintfの使用:Go言語では、以下を使用することもできますSprintf()メソッドで文字列を結合

    //Sprintf関数の使用
    package main
    import "fmt"
    func main() {
        //作成と初期化する文字列
        str1 := "Tutorial"
        str2 := "of"
        str3 := "Go"
        str4 := "Language"
        //接続する文字列の使用
        // Sprintf()関数
        result := fmt.Sprintf("%s%s%s%s", str1, str2, str3, str4)
        fmt.Println(result)
    }

    出力:

    TutorialofGoLanguage
  • 使用+ =演算子または文字列の追加:Goの文字列では、以下を使用できます+ =演算子で結合文字列。この演算子は新しいまたは既存の文字列を指定された文字列の末尾に追加します。

    // 使用 += 演算子で文字列を結合
    package main 
      
    import "fmt"
      
    func main() { 
      
        //作成と初期化する文字列
        str1 := "Welcome"
        str2 := "w3codebox"
      
        //使用 += 演算子
        str1 += str2 
        fmt.Println("文字列: ", str1) 
      
        str1 += "This is the tutorial of Go language"
        fmt.Println("文字列: ", str1) 
      
        str2 += "Portal"
        fmt.Println("文字列: ", str2) 
      
    }

    出力:

    文字列:  Welcomew3codebox
    文字列:  Welcomew3codeboxThis is the tutorial of Go language
    文字列:  w3codeboxPortal
  • Join()関数の使用:この関数は、文字列シートに存在するすべての要素を単一の文字列に結合します。この関数は文字列パッケージで利用可能です。

    文法:

    func Join(str []string, sep string) string

    ここでは、strjoin()関数を使用して要素を結合するための文字列、sepは最終文字列中の要素間に配置される区切り文字です。

    //全ての要素を結合
    //文字列の一部に現れる
    package main 
      
    import ( 
        "fmt"
        "strings"
    ) 
      
    func main() { 
      
        //文字列シートの作成と初期化
        myslice := []string{"Welcome", "To", "w3codebox", "Portal"} 
      
            //要素を結合
            //シート内に表示
            //使用join()関数
        result := strings.Join(myslice, "-") 
        fmt.Println(result) 
    }

    出力:

    Welcome-To-w3codebox-Portal