文字列を扱っていて、ある部分文字列(”!”など)をトリミング(切り取り)したいときに使える関数を紹介します。
目次
Contents
strings.Trim: 位置に関係なく対象文字列をトリミング
package mainimport ("fmt""strings")func main() {fmt.Print(strings.Trim("!!!Hello, World???", "!?")) // Hello, World}
strings.TrimLeft/TrimRight: 文字列の左側/右側をトリミング
package mainimport ("fmt""strings")func main() { fmt.Print(strings.TrimLeft("!!!Hello, World???", "!?")) // Hello, World??? fmt.Print(strings.TrimLeft("???Hello, World!!!", "!?")) // Hello, World!!! fmt.Print(strings.TrimRight("!!!Hello, World???", "!?")) // !!!Hello, World fmt.Print(strings.TrimRight("???Hello, World!!!", "!?")) // ???Hello, World}
strings.TrimPrefix/TrimSuffix: プレフィックス/サフィックスをトリミング
TrimLeft/TrimRightとの違いが少しややこしいですが、例えば以下のような挙動の違いがあります。(コードのアイデアはこちらよりいただきました)
package mainimport ("fmt""strings")func main() { fmt.Println(strings.TrimLeft("abc-back", "abc-"))// k fmt.Println(strings.TrimPrefix("abc-back", "abc-")) // back }
strings.TrimSpace: ホワイトスペースをトリミング
package mainimport ("fmt""strings")func main() {fmt.Print(strings.TrimSpace(" Hello, World")) // Hello, World}
参考リンク・書籍
おまけ
Twitterでもエンジニアリング・キャリア形成に役立つ記事をシェアしてます。良かったらフォローお願いします!