String.Chars[Int32] プロパティ

定義

現在の String オブジェクト内の指定された位置にある Char オブジェクトを取得します。Gets the Char object at a specified position in the current String object.

public:
 property char default[int] { char get(int index); };
public char this[int index] { get; }
member this.Chars(int) : char
Default Public ReadOnly Property Chars(index As Integer) As Char

パラメーター

index
Int32

現在の文字列内の位置。A position in the current string.

プロパティ値

index 位置にあるオブジェクト。The object at position index.

例外

index がこのオブジェクトの長さ以上か、0 未満です。index is greater than or equal to the length of this object or less than zero.

次の例では、ルーチンでこのインデクサーを使用して文字列を検証する方法を示します。The following example demonstrates how you can use this indexer in a routine to validate a string.

Console::Write( "Type a string : " );
String^ myString = Console::ReadLine();
for ( int i = 0; i < myString->Length; i++ )
   if ( Uri::IsHexDigit( myString[ i ] ) )
            Console::WriteLine( "{0} is a hexadecimal digit.", myString[ i ] );
   else
            Console::WriteLine( "{0} is not a hexadecimal digit.", myString[ i ] );
// The example produces output like the following:
//    Type a string : 3f5EaZ
//    3 is a hexadecimal digit.
//    f is a hexadecimal digit.
//    5 is a hexadecimal digit.
//    E is a hexadecimal digit.
//    a is a hexadecimal digit.
//    Z is not a hexadecimal digit.      
Console.Write("Type a string : ");
string myString = Console.ReadLine();
for (int i = 0; i < myString.Length; i ++)
   if(Uri.IsHexDigit(myString[i]))
      Console.WriteLine("{0} is a hexadecimal digit.", myString[i]); 
   else
      Console.WriteLine("{0} is not a hexadecimal digit.", myString[i]); 
// The example produces output like the following:
//    Type a string : 3f5EaZ
//    3 is a hexadecimal digit.
//    f is a hexadecimal digit.
//    5 is a hexadecimal digit.
//    E is a hexadecimal digit.
//    a is a hexadecimal digit.
//    Z is not a hexadecimal digit.            
Console.Write("Type a string : ")
Dim myString As String = Console.ReadLine()
Dim i As Integer
For i = 0 To myString.Length - 1
   If Uri.IsHexDigit(myString.Chars(i)) Then
      Console.WriteLine("{0} is a hexadecimal digit.", myString.Chars(i))
   Else
      Console.WriteLine("{0} is not a hexadecimal digit.", myString.Chars(i))
   End If 
Next
' The example produces output like the following:
'    Type a string : 3f5EaZ
'    3 is a hexadecimal digit.
'    f is a hexadecimal digit.
'    5 is a hexadecimal digit.
'    E is a hexadecimal digit.
'    a is a hexadecimal digit.
'    Z is not a hexadecimal digit.         

注釈

index パラメーターは0から始まります。The index parameter is zero-based.

このプロパティは、index パラメーターによって指定された位置にある Char オブジェクトを返します。This property returns the Char object at the position specified by the index parameter. ただし、Unicode 文字は複数の Charで表される場合があります。However, a Unicode character might be represented by more than one Char. System.Globalization.StringInfo クラスを使用して、Char オブジェクトではなく Unicode 文字を操作します。Use the System.Globalization.StringInfo class to work with Unicode characters instead of Char objects. 詳細については、「String クラスの概要」の「Char オブジェクトと Unicode 文字」セクションを参照してください。For more information, see the "Char Objects and Unicode Characters" section in the String class overview.

でC#は、Chars[Int32] プロパティはインデクサーです。In C#, the Chars[Int32] property is an indexer. Visual Basic では、これは String クラスの既定のプロパティです。In Visual Basic, it is the default property of the String class. 文字列内の各 Char オブジェクトには、次のようなコードを使用してアクセスできます。Each Char object in the string can be accessed by using code such as the following.

string str1 = "Test";
for (int ctr = 0; ctr <= str1.Length - 1; ctr++ )
   Console.Write("{0} ", str1[ctr]);
// The example displays the following output:
//      T e s t         
Dim str1 As String = "Test"
For ctr As Integer = 0 to str1.Length - 1
   Console.Write("{0} ", str1(ctr))
Next   
' The example displays the following output:
'      T e s t         

適用対象

こちらもご覧ください