カテゴリ: Go言語 更新日: 2025/10/21

Go言語の文字列を大文字・小文字に変換する方法!ToUpper・ToLowerの使い方を徹底解説

Go言語の文字列の大文字・小文字変換(ToUpper・ToLower)のやり方
Go言語の文字列の大文字・小文字変換(ToUpper・ToLower)のやり方

先生と生徒の会話形式で理解しよう

生徒

「Go言語で文字列を全部大文字や小文字に変えることってできますか?」

先生

「はい、できます。Go言語にはstringsパッケージが用意されていて、その中のToUpperToLower関数を使えば簡単に変換できますよ。」

生徒

「どんなときに使うんですか?」

先生

「例えば、ユーザーが入力した文字を統一したいときなどに便利です。では実際の使い方を見ていきましょう!」

1. Go言語の文字列変換とは?

1. Go言語の文字列変換とは?
1. Go言語の文字列変換とは?

プログラミングでは文字列を扱うことがとても多いです。特に、ユーザーが入力する文字は大文字と小文字が混ざっている場合があります。例えば「apple」「Apple」「APPLE」は見た目は違いますが、意味は同じ「りんご」です。このとき、大文字や小文字を統一して比較や保存をすると便利です。

Go言語には、標準ライブラリのstringsパッケージに文字列変換の関数があり、これを使うことで簡単に大文字・小文字の変換ができます。

2. ToUpperで文字列を大文字に変換する

2. ToUpperで文字列を大文字に変換する
2. ToUpperで文字列を大文字に変換する

strings.ToUpper関数を使うと、文字列のすべての文字を大文字に変換できます。例えば「hello」という文字列を渡すと「HELLO」になります。


package main

import (
    "fmt"
    "strings"
)

func main() {
    text := "hello, go!"
    upper := strings.ToUpper(text)
    fmt.Println(upper)
}

HELLO, GO!

このように、アルファベット部分がすべて大文字に変換されました。日本語や数字はそのまま変換されずに残ります。

3. ToLowerで文字列を小文字に変換する

3. ToLowerで文字列を小文字に変換する
3. ToLowerで文字列を小文字に変換する

逆に、strings.ToLowerを使えば文字列を小文字に変換できます。これにより、大文字小文字が混ざった文字列でも統一して扱うことができます。


package main

import (
    "fmt"
    "strings"
)

func main() {
    text := "GoLang Programming"
    lower := strings.ToLower(text)
    fmt.Println(lower)
}

golang programming

この例では「GoLang Programming」がすべて小文字の「golang programming」に変換されました。

4. 大文字・小文字変換の活用例

4. 大文字・小文字変換の活用例
4. 大文字・小文字変換の活用例

大文字小文字の変換は、特に文字列比較のときに役立ちます。例えば、ユーザーが「YES」と入力しても「yes」と入力しても、同じ意味として扱いたい場合があります。そのようなときは両方を小文字に変換して比較する方法が使えます。


package main

import (
    "fmt"
    "strings"
)

func main() {
    input := "YeS"
    if strings.ToLower(input) == "yes" {
        fmt.Println("同意が確認できました!")
    } else {
        fmt.Println("入力が異なります。")
    }
}

同意が確認できました!

このようにすれば、大文字や小文字が混ざっていても同じ意味で処理できます。

5. 日本語や数字はどうなる?

5. 日本語や数字はどうなる?
5. 日本語や数字はどうなる?

Go言語のToUpperToLowerはアルファベットに対して働く機能です。日本語や数字、記号などは変換されません。例えば「こんにちは123!」という文字列を変換しても、そのまま変わらず表示されます。


package main

import (
    "fmt"
    "strings"
)

func main() {
    text := "こんにちは123!"
    fmt.Println(strings.ToUpper(text))
    fmt.Println(strings.ToLower(text))
}

こんにちは123!
こんにちは123!

このように、アルファベット以外はそのまま出力されます。したがって、日本語の文章を扱うときには見た目に変化はありません。

6. 応用:ユーザー入力の正規化

6. 応用:ユーザー入力の正規化
6. 応用:ユーザー入力の正規化

実際のアプリケーションでは、ユーザーが入力する内容を統一して扱うことが多いです。例えば、ログイン画面でメールアドレスを入力する場合に「User@Example.com」と「user@example.com」は同じメールアドレスとして処理する必要があります。そのときにToLowerを使って小文字に統一すると、比較が簡単になります。

関連記事:
カテゴリの一覧へ
新着記事
Go言語の関数でエラーハンドリングする基本的な方法
Go言語のスライス・マップ・配列をまとめて比較してみよう!初心者でもわかる使い分けの基本
Go言語の条件分岐の見やすい書き方を徹底解説!初心者でもわかるif文の使い方
Go言語とは何か?初心者向けに特徴・できること・インストール手順までやさしく解説
人気記事
No.1
Java&Spring記事人気No1
Swift Playgroundの使い方を完全解説!初心者に最適な学習環境の始め方
No.2
Java&Spring記事人気No2
Go言語で条件式を1行で書くコツ!三項演算子の代替と短縮記法
No.3
Java&Spring記事人気No3
Swift開発環境の構築方法を徹底解説!Xcode・Windows・Linux対応
No.4
Java&Spring記事人気No4
Kotlinのデータクラス(data class)とは?便利な特徴と使い方を初心者向けにやさしく解説!