トラック
/
Go
Go
/
シラバス
/
`strings`パッケージ
`s

`strings`パッケージ の Go

1個の演習

`strings`パッケージについて

stringsパッケージには、文字列を扱うための関数が用意されています。 ここではその中から一部の関数を紹介します。残りの関数については、ドキュメントを確認してみてください。

役割 関数 目的
大文字・小文字の変換 ToLower 文字列を小文字に変換します
大文字・小文字の変換 ToUpper 文字列を大文字に変換します
検索 Contains 文字列が特定の部分文字列を含むかどうかを調べます
検索 Count 重複しない部分文字列の出現回数を数えます
検索 HasPrefix 文字列が特定の部分文字列で始まるかどうかを調べます
検索 HasSuffix 文字列が特定の部分文字列で終わるかどうかを調べます
検索 Index 部分文字列が最初に現れるインデックスを返します。見つからない場合は-1を返します
変更 Replace 部分文字列を最大n回置換します
変更 ReplaceAll 部分文字列をすべて置換します
変更 TrimSpace 先頭と末尾の空白を削除します
分割と結合 Fields 文字列を空白で区切って単語に分割します
分割と結合 FieldsSeq 単語を1つずつ取り出します
分割と結合 Join 文字列のスライスを区切り文字で結合します
分割と結合 Split 文字列を区切り文字で部分ごとに分割します
分割と結合 SplitSeq 各部分を1つずつ取り出します
import (
    "fmt"
    "strings"
)

// Case conversion
strings.ToLower("Gopher")              // "gopher"
strings.ToUpper("Gopher")              // "GOPHER"

// Searching
strings.Contains("Apple", "le")        // true
strings.Index("Apple", "le")           // 3
strings.Index("Apple", "xyz")          // -1
strings.Count("test", "t")             // 2
strings.HasPrefix("Gopher", "Go")      // true
strings.HasSuffix("Gopher", "er")      // true

// Modifying
strings.TrimSpace("  hello  ")         // "hello"
strings.Replace("aabbcc", "b", "x", 1) // "aaxbcc"
strings.ReplaceAll("aabbcc", "b", "x") // "aaxxcc"

// Splitting or Joining
strings.Fields("  a b\tc  ")               // []string{"a", "b", "c"}
strings.Split("a,b,c", ",")                // []string{"a", "b", "c"}
strings.Join([]string{"a", "b", "c"}, ",") // "a,b,c"

// You do not need to worry about this range syntax yet.
// It is covered later in the range iteration concept.
for word := range strings.FieldsSeq("  a b\tc  ") {
    fmt.Println(word)
}
// Output:
// a
// b
// c

for part := range strings.SplitSeq("a,b,c", ",") {
    fmt.Println(part)
}
// Output:
// a
// b
// c
GitHubで編集 リンクは新しいウィンドウまたはタブで開きます

`strings`パッケージを学習する