カテゴリ: C# 更新日: 2026/08/18

C#の文字列の長さを取得する方法!Lengthプロパティを初心者向けに解説

C#の文字列の長さを取得する方法(Lengthプロパティ)
C#の文字列の長さを取得する方法(Lengthプロパティ)

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

生徒

「C#で文字列の長さを調べる方法ってありますか?」

先生

「はい、C#ではLength(レングス)プロパティを使えば、文字列が何文字あるのかを簡単に調べることができます。」

生徒

「プロパティってなんですか?ちょっと難しそうです…」

先生

「プロパティというのは、オブジェクト(この場合は文字列)が持っている性質や情報のことです。Lengthは文字列が持っている“長さ”という情報を取り出す機能なんですよ。」

生徒

「なるほど!実際にどんな風に使うのか見てみたいです。」

先生

「それでは、サンプルコードを使って一緒に確認してみましょう!」

1. 文字列の長さを調べるLengthプロパティとは?

1. 文字列の長さを調べるLengthプロパティとは?
1. 文字列の長さを調べるLengthプロパティとは?

C#でプログラミングをしていると、「入力された文字が長すぎないか?」「空欄になっていないか?」など、文字の数をチェックしたい場面が非常に多くあります。そんな時に役立つのがLength(レングス)プロパティです。

Lengthプロパティは、文字列の中に「何個の文字が入っているか」を数えて、その結果を整数の数値(int型)として教えてくれる機能です。初心者の方は、「文字列の箱の中に何文字詰まっているかを測る定規」のようなものだとイメージすると分かりやすいでしょう。

例えば、プログラミング未経験の方でもイメージしやすいよう、名前の文字数を数える簡単な例を見てみましょう。


string name = "田中太郎";
int count = name.Length; // ここで文字数を数えている

Console.WriteLine("お名前は " + count + " 文字です。");

お名前は 4 文字です。

このように、変数名.Lengthと書くだけで簡単に数字を取り出すことができます。「田中太郎」なら4、「Hello」なら5、といったように、英語・日本語・数字などを問わず、単純に「1文字を1」としてカウントしてくれます。特別な設定なしで直感的に使えるのが、Lengthプロパティの大きな特徴です。

2. Lengthプロパティの基本的な使い方

2. Lengthプロパティの基本的な使い方
2. Lengthプロパティの基本的な使い方

C#で文字列の長さを取得するのは、驚くほど簡単です。Length(レングス)というプロパティを使うだけで、その文字列が「全部で何文字あるか」を一瞬で数えてくれます。

プログラミングが初めての方でも分かりやすいように、まずは最もシンプルなコード例を見てみましょう。たとえば、「Hello C#」という文字が何文字なのかを調べてみます。


// 調べたい文字列を準備します
string text = "Hello C#";

// Lengthを使って文字数を数え、int型(整数)の変数に代入します
int length = text.Length;

// 結果を画面に表示します
Console.WriteLine("文字列の長さは " + length + " です。");

このプログラムを実行すると、画面には次のように表示されます。


文字列の長さは 8 です。

ここで「あれ?」と思った方もいるかもしれません。「Hello」が5文字、「C#」が2文字で合計7文字に見えますよね。しかし、「Hello」と「C#」の間にある半角スペースも「1文字」としてカウントされるため、正解は「8」になります。

このように、Lengthは目に見える文字だけでなく、空白(スペース)なども含めた「データの合計数」を正確に教えてくれる非常に便利な機能です。入力されたパスワードの長さをチェックしたり、文章が長すぎないか確認したりする際に欠かせない、C#プログラミングの基本中の基本と言えるでしょう。

3. 日本語の文字列でも使える?(全角・半角のカウント)

3. 日本語の文字列でも使える?(全角・半角のカウント)
3. 日本語の文字列でも使える?(全角・半角のカウント)

プログラミング初心者の方がよく抱く疑問に、「Lengthプロパティは英語(半角英数字)専用なの?」というものがありますが、安心してください。C#のLengthは、日本語のひらがな、カタカナ、漢字といった「全角文字」も、英語と同じように1文字として正しくカウントしてくれます。

実際に、日本語のあいさつ「こんにちは」という文字列を使って、文字数を調べてみるサンプルコードを見てみましょう。


string greeting = "こんにちは";
int count = greeting.Length; // 文字数を数えて変数に入れる

Console.WriteLine("「" + greeting + "」の文字数は " + count + " です。");

「こんにちは」の文字数は 5 です。

このように、「こんにちは」は5文字なので、実行結果もしっかりと「5」になります。たとえ「C#プログラミング」のように、半角英数字と日本語が混ざっていても、見たままの文字数を返してくれるのがLengthの便利なポイントです。

ただし、一点だけ注意があります。Lengthが数えるのは「コンピューターから見た文字の数」です。そのため、絵文字などの特殊なキャラクターを扱う場合には少し結果が変わることがありますが、通常のアプリ開発で使う日本語(漢字・ひらがな等)であれば、このまま直感的に使って問題ありません。初心者の方は、まずは「日本語でも英語でも、見た通りの文字数が取得できる」と覚えておきましょう。

4. 空の文字列やスペース(空白)を含む場合の長さ

4. 空の文字列やスペース(空白)を含む場合の長さ
4. 空の文字列やスペース(空白)を含む場合の長さ

プログラミング初心者の方が最初につまずきやすいのが、「目に見えない文字」の扱いです。 C#のLengthプロパティは、たとえ画面上で何も表示されていないように見えても、コンピュータが「文字」として認識しているものはすべてカウントします。

文字列が空っぽ(空文字列)の場合

ダブルクォーテーションを2つ並べただけの状態を「空文字列(からもじれつ)」と呼びます。この場合、中身に文字が1つも存在しないため、長さは「0」になります。


string empty = "";
Console.WriteLine(empty.Length); // 文字がないので 0 と表示される

0

スペース(空白)が含まれる場合

次に注意したいのが「スペース」です。私たちは「何もない隙間」だと感じますが、プログラムの世界ではスペースも立派な1文字として扱われます。 例えば、「ABC」の後に半角スペースを1つ入れた場合、合計で4文字として計算されます。


string text = "ABC ";
int result = text.Length;
Console.WriteLine(result); // 「A」「B」「C」「 」の合計4文字

4

全角スペース( )も同様に1文字としてカウントされます。 「文字数がおかしいな?」と思ったときは、末尾などに目に見えないスペースが紛れ込んでいないかチェックしてみるのが、バグを見つける第一歩ですよ!

5. Lengthを使った便利な活用例

5. Lengthを使った便利な活用例
5. Lengthを使った便利な活用例

プログラミングにおいて、Lengthプロパティは単に数を数えるだけでなく、ユーザーが入力したデータが正しいかどうかをチェックする「バリデーション(入力確認)」の場面で非常に重宝されます。

例えば、会員登録システムなどで「パスワードは8文字以上に設定してください」というルールがある場合を想定してみましょう。Lengthを使えば、初心者の方でも驚くほど簡単にこの仕組みを作ることができます。


string password = "abc123";

// password.Lengthが8以上かどうかを判定します
if (password.Length >= 8)
{
    Console.WriteLine("パスワードの文字数は十分です。");
}
else
{
    // 8文字未満(今回の場合は6文字)なのでこちらが実行されます
    Console.WriteLine("パスワードは8文字以上にしてください。");
}

パスワードは8文字以上にしてください。

このプログラムのポイントは、password.Lengthという部分が、実行された瞬間に「6」という具体的な数字に置き換わって判定されている点です。このように、Lengthは「もし〜だったら」というif文と組み合わせることで、アプリの使い勝手を良くするための重要な役割を果たします。

他にも、SNSの投稿制限(140文字以内か?)や、お問い合わせフォームの入力漏れチェックなど、文字数を基準にした条件分岐は日常の至る所で見られます。まずはこのシンプルな「文字数の比較」からマスターしていきましょう。

6. 配列や他のデータ型との違い

6. 配列や他のデータ型との違い
6. 配列や他のデータ型との違い

ここで少し補足です。文字列(string)のLengthは「文字数」を表しますが、配列のLengthは「要素数」を表します。つまり文字列と配列の両方にLengthがありますが、意味は文脈によって異なります。

例えば次のようなコードです。


int[] numbers = { 1, 2, 3, 4, 5 };
Console.WriteLine(numbers.Length); // 出力結果は 5

5

この場合は「配列に5つの要素がある」という意味での長さです。文字列の場合は「文字数」と覚えておくと分かりやすいでしょう。

まとめ

まとめ
まとめ

C#で文字列の長さを調べるにはLengthプロパティを使うのが基本です。このLengthはとてもシンプルで直感的に使える機能で、プログラミング初心者でもすぐに理解しやすいのが特徴です。たとえば、入力された文字列の長さをチェックしたり、特定の条件に合うかどうかを判断する際に活躍します。

英語でも日本語でも、1文字ずつ正しくカウントされるため、日本語のようなマルチバイト文字でも安心して利用できます。さらに、空の文字列は「0」として扱われ、スペース(空白)もちゃんと1文字として数えられるため、細かなチェックが求められる場面でも役立ちます。

現実のアプリケーションでは、ログインフォームや会員登録画面、メッセージ投稿欄など、ユーザーの入力内容に対して長さのチェックを行う場面がとても多くあります。そのため、Lengthプロパティを適切に使うことで、安全かつ正確なプログラムを作成できるようになります。

また、Lengthは文字列だけでなく、配列やリストなどにも使えるという点も重要です。文字列では「文字数」、配列では「要素数」というように、用途によって意味は少し異なりますが、いずれにせよ「その中にどれだけの要素があるか」を知るための共通の手段として覚えておくと非常に便利です。

Lengthを活用したパスワード入力のチェック例


using System;

class Program
{
    static void Main()
    {
        Console.Write("パスワードを入力してください: ");
        string input = Console.ReadLine();

        if (input.Length >= 8)
        {
            Console.WriteLine("パスワードの長さは適切です。");
        }
        else if (input.Length == 0)
        {
            Console.WriteLine("パスワードが空です。入力してください。");
        }
        else
        {
            Console.WriteLine($"パスワードが短すぎます(現在 {input.Length} 文字)。8文字以上にしてください。");
        }
    }
}
    

上記の例では、パスワードが8文字以上か、空でないかをLengthで判定しています。これにより、ユーザーの入力内容に対してフィードバックを的確に返すことができます。

なお、全角文字が含まれる場合でも、Lengthは文字単位で正確にカウントされるため、日本語での入力がある場合でも問題なく利用できます。たとえば「パスワード123」という文字列であれば、全角の「パスワード」は5文字、数字3文字の合計8文字と判断され、条件を満たす形になります。

先生と生徒の振り返り会話

生徒

「Lengthプロパティって簡単なのに、こんなにいろんなところで使えるんですね!」

先生

「その通りです。文字数のチェックは基本的な操作ですが、実務では非常によく使われます。」

生徒

「英語だけじゃなくて日本語にも対応してるのが安心でした!あと、空文字やスペースの扱いも確認できてよかったです。」

先生

「C#はマルチバイト文字にも強いので、国際化対応が求められるアプリでもしっかり活躍してくれますね。」

生徒

「これからはLengthを使ってパスワードチェックや入力制限を実装してみます!」

先生

「とても良い姿勢ですね。基本的な機能をしっかり使いこなせると、より応用力も身についていきますよ。」

カテゴリの一覧へ
新着記事
New1
C#
C#のLINQでWhere・Select・OrderByを使う方法を完全解説!初心者でもわかる基本操作
New2
C#
C#プログラムの実行方法まとめ!Visual Studio・コマンドライン・.NET CLIの使い方
New3
Azure
Azure DDoS ProtectionとAzure WAFの違いとは?アプリレイヤーまで守る最強の防御策を徹底解説
New4
C#
C#でHello Worldを表示する方法を完全ガイド!初心者でも1行から始められる入門講座
人気記事
No.1
Java&Spring記事人気No1
C#
C#のWPFとは?XAMLでGUI開発を基礎から完全解説!初心者向けの入門ガイド
No.2
Java&Spring記事人気No2
Azure
Azure SQL Database購入モデル比較!vCoreとDTUの違いと選び方を初心者向けに解説
No.3
Java&Spring記事人気No3
Azure
Azure ExpressRouteとBGPプロトコルを徹底解説!ルート広報の仕組みとルーティング設計の基本
No.4
Java&Spring記事人気No4
C#
C#の文字列を数値に変換する方法(int.Parse・TryParse)をわかりやすく解説!
No.5
Java&Spring記事人気No5
C#
C#のforeachループを完全ガイド!初心者でもわかるコレクション操作の基本
No.6
Java&Spring記事人気No6
C#
C#の日付型(DateTime)と基本的な使い方を解説|初心者向け入門ガイド
No.7
Java&Spring記事人気No7
C#
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.8
Java&Spring記事人気No8
COBOL
COBOLの数値データ型「PIC 9」の使い方と注意点をやさしく解説!