Substring

Substring で文字列の一部を取り出します。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プログラムの説明

  1. string 形式では Substring() メソッドが使えます。
        string str = "0123456789abcDEFG";
        string str2, str3, str4;
    
        str2 = str;
        str3 = str.Substring(8);
        str4 = str.Substring(10, 5);
        Console.WriteLine("{0}\n{1}\n{2}\n", str2,str3,str4);
        
    プログラムの実行結果です。
    0123456789abcDEFG
    89abcDEFG
    abcDE
    
    str.Substring(8); では、str の8文字目から後の文字列が取り出されます。
    str.Substring(10, 5); では、str の10文字目から5文字が取り出されます。
  2. string 形式にはインデクサが定義されていて、文字の配列と同じように添え字で特定の文字を参照することができます。
    次の例では ch に '8' が格納されます。
        string str = "0123456789abcdefg";
        char   ch;
    
        ch = str[7];
        
  3. Substring() やインデクサが左辺に使えたら便利なのですが、使えないようです。
    次の書き方はエラーが表示されます。
        str[10] = 'X';                //エラー
        str.Substring(10, 3) = "XYZ"; //エラー
        
  4. String の長さは str.Length で得られます。
        string   str;
        if (str.Length>8)
        {
            ・・・
        }    
    
  5. 空 string の判定は Empty を使います。
        if (str==string.Empty)
        {
            ・・・
        }    
        
  6. C/C++ でも同様のプログラムを String & char を作成しています。
    Program Guid でストリング関係のページを抜粋しています。

【NOTE】

大文字/小文字を区別しないで比較するには、String.Compare() で true を使います。
    if (String.Compare(strA, strB, true) == 0)
    {   // 大文字/小文字を無視して比較   }
ToLower(), ToUpper() で、大文字/小文字に変換して比較することも出来ますが、多少実行時間が遅いようです。

[Next Chapter ↓]カンマで区切られた数字を配列に変換

超初心者のプログラム入門(C# Frame Work)