C# | ゼロからはじめるプログラミング、30日で基礎を学ぶC#:基本機能を身に付ける - Day9:文字列操作の練習問題

C# 30日で身につけるC#
スポンサーリンク
スポンサーリンク

Day9 文字列操作・練習問題と解答解説

Day9 で学んだ Length / Substring / Split / Replace / Trim / ToUpper / ToLower / StringBuilder をしっかり定着させるための練習問題と、 初心者でも理解しやすい丁寧な解答・解説をまとめています。 文字列操作は実務でも頻繁に使われるため、ここで確実に身につけておくことが重要です。

Length の練習問題

問題

文字列 text に “HelloWorld” が入っています。文字数を表示してください。

解答と解説

string text = "HelloWorld";
Console.WriteLine(text.Length);
C#

Length は「文字列の長さ」を返すプロパティです。 括弧は不要で、text.Length() のようには書きません。 パスワードの長さチェックなどで頻繁に使われます。

Substring の練習問題

問題

文字列 code に “ABCDEFG” が入っています。3文字目から3文字分(CDE)を取り出して表示してください。

解答と解説

string code = "ABCDEFG";
string part = code.Substring(2, 3);
Console.WriteLine(part);
C#

Substring(開始位置, 取り出す長さ) で部分文字列を取得します。 開始位置は 0から始まる ため、2 は「3文字目」を意味します。

Split の練習問題

問題

文字列 csv に “Taro,20,Tokyo” が入っています。Split を使って分割し、3つの要素をそれぞれ表示してください。

解答と解説

string csv = "Taro,20,Tokyo";
string[] items = csv.Split(',');

Console.WriteLine(items[0]);
Console.WriteLine(items[1]);
Console.WriteLine(items[2]);
C#

Split は「区切り文字で分割して配列を返す」機能です。 CSVデータの処理で必須となります。

Replace の練習問題

問題

文字列 text に “I like apple.” が入っています。apple を orange に置き換えて表示してください。

解答と解説

string text = "I like apple.";
string result = text.Replace("apple", "orange");
Console.WriteLine(result);
C#

Replace は「該当するすべての文字列を置き換える」機能です。 複数の apple があっても一括で変更できます。

Trim の練習問題

問題

文字列 name に ” Taro ” が入っています。前後の空白を取り除いて表示してください。

解答と解説

string name = "  Taro  ";
string result = name.Trim();
Console.WriteLine(result);
C#

Trim は「前後の空白」を除去します。 ユーザー入力の前処理として非常に重要です。

ToUpper / ToLower の練習問題

問題

文字列 word に “Apple” が入っています。大文字化と小文字化した結果を表示してください。

解答と解説

string word = "Apple";
Console.WriteLine(word.ToUpper());
Console.WriteLine(word.ToLower());
C#

検索処理で「大文字・小文字を区別しない」ために使われます。

StringBuilder の練習問題

問題

StringBuilder を使って “Hello” と “World” を連結し、”Hello World” を表示してください。

解答と解説

using System.Text;

StringBuilder sb = new StringBuilder();
sb.Append("Hello");
sb.Append(" ");
sb.Append("World");

Console.WriteLine(sb.ToString());
C#

StringBuilder は「大量の文字列連結」を高速に処理できます。 ログ生成やレポート作成などで必須です。

応用問題:CSVデータの分割と整形

問題

文字列 csv に ” Taro , 20 , Tokyo ” が入っています。 Split と Trim を使って整形し、 名前・年齢・都市をそれぞれ表示してください。

解答と解説

string csv = "  Taro , 20 , Tokyo  ";
string[] items = csv.Split(',');

string name = items[0].Trim();
string age = items[1].Trim();
string city = items[2].Trim();

Console.WriteLine(name);
Console.WriteLine(age);
Console.WriteLine(city);
C#

Split で分割 → Trim で空白除去という流れは、 外部データ処理で非常に重要です。

応用問題:パスワード強度チェック(簡易版)

問題

文字列 password に “Abc123” が入っています。 次の条件をチェックして結果を表示してください。

長さが8文字以上 大文字を含む 小文字を含む 数字を含む

解答と解説

string password = "Abc123";

bool hasUpper = password != password.ToLower();
bool hasLower = password != password.ToUpper();
bool hasDigit = false;

for (int i = 0; i < password.Length; i++)
{
    if (char.IsDigit(password[i]))
        hasDigit = true;
}

bool isLongEnough = password.Length >= 8;

Console.WriteLine("大文字: " + hasUpper);
Console.WriteLine("小文字: " + hasLower);
Console.WriteLine("数字: " + hasDigit);
Console.WriteLine("長さ8以上: " + isLongEnough);
C#

ToUpper / ToLower を使った判定は非常に強力です。 数字判定は char.IsDigit を使うと安全で確実です。

Day9 練習問題まとめ

Day9 の練習問題では、次のポイントを確認しました。

Length → 文字数を取得 Substring → 部分文字列を取り出す Split → 区切り文字で分割 Replace → 文字列の置き換え Trim → 前後の空白を除去 ToUpper / ToLower → 大文字・小文字変換 StringBuilder → 高速な文字列連結

これらを組み合わせることで、 CSVデータの整形やパスワードチェックなど、 実務レベルの文字列処理ができるようになります。

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