文字列操作を行うパッケージです。
importに”strings”を含めて使います。
よく使いそうなものだけ書いてみます。
まだ勉強していないキーワードが出てきますが、そこは追々書いていきます。
詳しくは http://golang.jp/pkg/strings を参考にして下さい。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
package main import ( "fmt" "strings" ) func main() { a := "こんにちは" b := "世界 " //文字列を結合する c := a + b fmt.Println(c) //こんにちは世界 //文字列のバイナリ列としての長さを返します。文字の数ではないです。 fmt.Println(len(a)) //15 //日本語の文字数は以下のように求める fmt.Println(len([]rune(a))) //5 //繰り返し文字列を生成する fmt.Println(strings.Repeat(c, 3)) //こんにちは世界 こんにちは世界 こんにちは世界 //大文字・小文字に揃える s := "I love GoLang" fmt.Println(strings.ToUpper(s)) //I LOVE GOLANG fmt.Println(strings.ToLower(s)) //i love golang //含まれているかどうか fmt.Println(strings.Contains(c, "世界")) //true //インデックスを求める なければ-1 fmt.Println(strings.Index(s, "s")) //-1 //日本語のインデックスは1文字×3 fmt.Println(strings.Index(c, "世界")) //15 //カウントする fmt.Println(strings.Count(s, "o")) //2 momo := "すもももももももものうち" fmt.Println(strings.Count(momo, "も")) //8 fmt.Println(strings.Count(momo, "桃")) //0 //置換 fmt.Println(strings.Replace(momo, "も", "す", 3)) //すすすすももももものうち //最後の引数がn < 0のとき、置換数は無制限になります fmt.Println(strings.Replace(momo, "も", "す", -1)) //すすすすすすすすすのうち //Split 区切って文字列のスライスを返す csv := "1,2,3,4,5,6" fmt.Println(strings.Split(csv, ",")) //[1 2 3 4 5 6] //Join 文字列スライスを結合して、新たな文字列を作成 fmt.Println(strings.Join([]string{"3", "2", "1"}, "|")) //3|2|1 //文字列の先頭と末尾の空白文字を削除する s = " Hello, Golang! " fmt.Println(strings.TrimSpace(s)) //Hello, Golang! //空白ならTrimSpace, 任意の文字でやりたければTrim s = "axxxxxaaaa" fmt.Println(strings.Trim(s, "a")) //xxxxx //文字列の末端の改行を削除する s = "Hello\n" fmt.Println(strings.TrimRight(s, "\n")) //Hello } |