どうも、ちょげ(@chogetarou)です。
文字列(string)の空白を削除する方法を紹介します。
方法

文字列(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)
コメント