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

Go

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

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

スポンサーリンク

方法

文字列(string)の空白(スペース)を全削除する方法は、2つあります。

Join() + Fields()

ひとつは、Join()とFields()を使う方法です。

まず、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.

ReplaceAll()

もうひとつは、ReplaceAll()を使う方法です。

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

import "strings"

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

ReplaceAll()の第1引数に対象の文字列、第2引数に空白の文字列、第3引数に空文字を指定します。

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

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

使用例

package main

import (
	"fmt"
	"strings"
)

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

	result := strings.ReplaceAll(text, " ", "")

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

まとめ

文字列(string)の空白(スペース)を全削除する方法は、次の2つです。

  • Join()とFields()を使う方法
    result := strings.Join(strings.Fields(text), "")
  • ReplaceAll()を使う方法
    result := strings.ReplaceAll(text, " ", "")

コメント

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