[Golang]文字列(string)の空白を削除するには?

Go

どうも、ちょげ(@chogetarou)です。

文字列(string)の空白を削除する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

文字列(string)の空白を削除する方法は、4つあります。

全ての空白を削除

1つ目は、全ての空白を削除する方法です。

まず、stringsをインポートします。

import "strings"

次に、stringsからJoin()を呼び出します。

Join()の第1引数に「strings.Fields()」、第2引数に空文字を指定します。

そして、Fields()の引数に対象の文字列を指定します。

//text=対象の文字列
result := strings.Join(strings.Fields(text), "")

上記のstrings.Join()は、対象の文字列(string)の空白を全て削除した文字列を生成します。

使用例

package main

import (
	"fmt"
	"strings"
)

func main() {
	text := "    H el  lo , W o   r l  d  "

	result := strings.Join(strings.Fields(text), "")

	fmt.Println(result + ".")
}
出力:
Hello,World.

左側の空白を削除

2つ目は、左側の空白を削除する方法です。

まず、stringsとunicodeをインポートします。

import (
	"strings"
	"unicode"
)

次に、stringsからTrimLeftFunc()を呼び出します。

TrimLeftFunc()の第1引数に対象の文字列、第2引数にunicode.IsSpaceを指定します。

//text=対象の文字列
result := strings.TrimLeftFunc(text, unicode.IsSpace)

上記のstrings.TrimLeftFunc()は、対象の文字列(string)の先頭(左側)の空白を削除した文字列を生成します。

使用例

package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {
	text := "  Hello, World"

	result := strings.TrimLeftFunc(text, unicode.IsSpace)

	fmt.Println(result)
}
出力:
Hello, World

右側の空白を削除

3つ目は、右側の空白を削除する方法です。

まず、stringsとunicodeをインポートします。

import (
	"strings"
	"unicode"
)

次に、stringsからTrimRightFunc()を呼び出します。

TrimRightFunc()の第1引数に対象の文字列、第2引数にunicode.IsSpaceを指定します。

//text=対象の文字列
result := strings.TrimRightFunc(text, unicode.IsSpace)

上記のstrings.TrimRightFunc()は、対象の文字列(string)の右側(末尾)の空白を削除した文字列を生成します。

使用例

package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {
	text := "Hello, World    "

	result := strings.TrimRightFunc(text, unicode.IsSpace)

	fmt.Println(result + ".")
}

出力:
Hello, World.

左右の空白を削除

4つ目は、左右の空白を削除する方法です。

まず、stringsをインポートします。

import "strings"

次に、stringsからTrimSpace()を呼び出します。

そして、TrimSpace()の引数に対象の文字列を指定します。

//text=対象の文字列
result := strings.TrimSpace(text)

上記のTrimSpace()は、引数の文字列(string)の左右の空白を削除した文字列を生成します。

使用例

package main

import (
	"fmt"
	"strings"
)

func main() {
	text := "    Hello, World  "

	result := strings.TrimSpace(text)

	fmt.Println(result + ".")
}
出力:
Hello, World.

まとめ

文字列(string)の空白を削除する方法は、次の4つです。

  • 全ての空白を削除する方法
    result := strings.Join(strings.Fields(text), "")
  • 左側の空白を削除する方法
    result := strings.TrimLeftFunc(text, unicode.IsSpace)
  • 右側の空白を削除する方法
    result := strings.TrimRightFunc(text, unicode.IsSpace)
  • 左右の空白を削除する方法
    result := strings.TrimSpace(text)

コメント

タイトルとURLをコピーしました