1. ホーム
  2. スクリプト・コラム
  3. ゴラン

Go言語文字列の基本 例 詳細

2022-01-06 03:09:54

内容

Contains(s,substr string) bool

sがsubstrを含むかどうかを判定する true:含む false:含まない

  str := "hello word"
  fmt.Println(strings.Contains(str, "hello")) //true
  fmt.Println(strings.Contains(str, "me")) //false
  fmt.Println(strings.Contains("", "")) //true Pay special attention here


ContainsAny(s, chars string) bool

単語 s が chars に含まれる文字のいずれかを含むかどうかを判定します。

  str := "hello word"
  fmt.Println(strings.ContainsAny(str, "w")) // true
  fmt.Println(strings.ContainsAny(str, "")) // false
  fmt.Println(strings.ContainsAny(str, "def")) // true
  fmt.Println(strings.ContainsAny("", "")) // false


統計情報

Count(s, substr string) int

文字列 s に含まれる文字 substr の出現回数を数える。

  str := "hello word"
  fmt.Println(strings.Count(str, "l")) //2
  fmt.Println(strings.Count(str, " ")) //1
  fmt.Println(strings.Count(str, "")) //11 Each string is followed by an EOF terminator


比較する

EqualFold(s, t string) bool

文字列sが文字列tの全てと等しいかどうかを判定し、大文字小文字を区別しない

  str := "hello word"
  fmt.Println(strings.EqualFold(str, "hello word")) //true
  fmt.Println(strings.EqualFold(str, "hello")) //false
  fmt.Println(strings.EqualFold(str, "HELLO WORD")) //true


HasPrefix(s, prefix string) bool

文字列 s が文字のプレフィックスで始まるかどうかを判定し、そうであれば true を、そうでなければ false を返す。

  str := "hello word"
  fmt.Println(strings.HasPrefix(str, "hello")) //true
  fmt.Println(strings.HasPrefix(str, "hellow")) //false


HasSuffix(s, suffix string) bool

文字列 s がサフィックス文字で終わるかどうかを判定し、終わる場合は true を、そうでない場合は false を返します。

  str := "hello word"
  fmt.Println(strings.HasSuffix(str, "word")) //true
  fmt.Println(strings.HasSuffix(str, " word")) //true
  fmt.Println(strings.HasSuffix(str, " word ")) //false


分割

フィールド(s文字列) []文字列

文字列 s をスペースで区切られた複数の文字列に分割し、成功した場合はスライスした文字列を、失敗した場合は元の文字列を返します。

  str := "hello word"
  fmt.Println(strings.Fields(str))
  fmt.Println(strings.Fields("helloword"))


添え字

インデックス(s, sep文字列) int

文字列sにsepが最初に現れるかどうかを判定し、成功すればsepのインデックスを、sepが文字列sにない場合は-1を返します。

  str := "hello word"
  fmt.Println(strings.Index(str, "hello")) //0
  fmt.Println(strings.Index(str, "word")) //6
  fmt.Println(strings.Index(str, " word ")) //-1
  fmt.Println(strings.Index(str, " ")) //0
  fmt.Println(strings.Index(str, " ")) //5


func LastIndex(s, sep string) int

文字列 s に sep という部分文字列が最後に現れたか、見つからなかった場合は -1、sep が空の場合は文字列の長さを返します。

  str := "hello word"
  fmt.Println(strings.LastIndex(str, "d")) //9
  fmt.Println(strings.LastIndex(str, "l")) //3
  fmt.Println(strings.LastIndex(str, " word ")) //-1


func IndexAny(s, chars string) int

文字列 s に chars で指定された文字が最初に現れるか、見つからなければ -1、chars が空であれば -1 を返します。

  str := "hello word"
  fmt.Println(strings.IndexAny(str, "helo")) //0
  fmt.Println(strings.IndexAny(str, "ws")) //6


スプライシング

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

Joinは、aの部分文字列をsepで区切って1つの文字列に結合します。

  fmt.Println(strings.Join([]string{"a", "b", "c"}, "-")) //a-b-c
  fmt.Println(strings.Join([]string{"a", "b", "c"}, "/")) //a/b/c


func リピート(s string, count int) string

カウントされた文字列sを新しい文字列に連結する

  str := "hello word"
  fmt.Println(strings.Repeat(str, 2))


ケース

func ToUpper(s string) string

非ASCII文字については、テーブルを検索して大文字のフォーマットを変換する必要があります。

  str := "hello word"
  fmt.Println(strings.ToUpper(str))


func ToLower(s string) string

非ASCII文字の場合、小文字のフォーマットはテーブルを検索して変換する必要があります。

  str := "hello word"
  fmt.Println(strings.ToLower(str))


スペースの削除

func Trim(s string, cutset string) string

は、cutset に含まれる s の最初と最後の連続した文字を削除します。

  fmt.Println(strings.Trim(str, "hello")) // word
  str = "hello word hello"
  fmt.Println(strings.Trim(str, "hello")) // word


func TrimLeft(s string, cutset string) string

TrimLeftはcutsetに含まれる文字のうち、sヘッダに連続する文字を削除します。

  str = "hello word"
  fmt.Println(strings.TrimLeft(str, "hello")) // word
  str = "hello word hello"
  fmt.Println(strings.TrimLeft(str, "hello")) // word hello


func TrimRight(s string, cutset string) string

TrimRightは、cutsetに含まれる文字のうち、sの末尾に連続する文字を削除する。

  str = "hello word hello123"
  fmt.Println(strings.TrimRight(str, "hello123")) //hello word
  fmt.Println(strings.TrimRight(str, "123")) //hello word hello


上記はGo言語文字列の基本例の詳細です。Go言語文字列に関するより詳しい情報は、スクリプトハウスの他の関連記事に注目してください