指定した Unicode 文字がこの文字列内で最初に見つかった位置のインデックスをレポートします。 検索は、指定した文字位置から開始されます。
アセンブリ: mscorlib (mscorlib.dll 内)
Public Function IndexOf ( _ value As Char, _ startIndex As Integer _ ) As Integer
public int IndexOf( char value, int startIndex )
public: int IndexOf( wchar_t value, int startIndex )
member IndexOf : value:char * startIndex:int -> int
| 例外 | 条件 |
|---|---|
| ArgumentOutOfRangeException |
startIndex が 0 未満か、インスタンスの末尾を越えた位置を指定しています。 |
インデックスの番号付けは 0 から始まります。 startIndex パラメーターには、0 から文字列インスタンスの長さより 1 小さい値までの範囲内の値を指定できます。
検索範囲は startIndex から文字列の末尾までです。
このメソッドは、序数 (カルチャに依存しない) 検索を実行します。この検索方法では、2 つの文字は Unicode スカラー値が等しいときだけ等価と見なされます。 カルチャに依存した検索を実行するには、CompareInfo.IndexOf メソッドを使用します。このメソッドを使用して検索すると、合字の "Æ" (U+00C6) のような構成済み文字を表す Unicode スカラー値は、"AE" (U+0041, U+0045) のようにその文字の構成要素が正しい順序で出現した場合、これらの構成要素と (カルチャの種類に応じて) 等価と見なされます。
IndexOf メソッドの例を次に示します。
' Sample for String.IndexOf(Char, Int32) Module Sample Sub Main() Dim br1 As String = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-" Dim br2 As String = "0123456789012345678901234567890123456789012345678901234567890123456" Dim str As String = "Now is the time for all good men to come to the aid of their party." Dim start As Integer Dim at As Integer Console.WriteLine() Console.WriteLine("All occurrences of 't' from position 0 to {0}.", str.Length - 1) Console.WriteLine("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str) Console.Write("The letter 't' occurs at position(s): ") at = 0 start = 0 While start < str.Length AndAlso at > -1 at = str.IndexOf("t"c, start) If at = -1 Then Exit While End If Console.Write("{0} ", at) start = at + 1 End While Console.WriteLine() End Sub End Module ' 'This example produces the following results: ' 'All occurrences of 't' from position 0 to 66. '0----+----1----+----2----+----3----+----4----+----5----+----6----+- '0123456789012345678901234567890123456789012345678901234567890123456 'Now is the time for all good men to come to the aid of their party. ' 'The letter 't' occurs at position(s): 7 11 33 41 44 55 64 ' '
// Sample for String.IndexOf(Char, Int32) using System; class Sample { public static void Main() { string br1 = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-"; string br2 = "0123456789012345678901234567890123456789012345678901234567890123456"; string str = "Now is the time for all good men to come to the aid of their party."; int start; int at; Console.WriteLine(); Console.WriteLine("All occurrences of 't' from position 0 to {0}.", str.Length-1); Console.WriteLine("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str); Console.Write("The letter 't' occurs at position(s): "); at = 0; start = 0; while((start < str.Length) && (at > -1)) { at = str.IndexOf('t', start); if (at == -1) break; Console.Write("{0} ", at); start = at+1; } Console.WriteLine(); } } /* This example produces the following results: All occurrences of 't' from position 0 to 66. 0----+----1----+----2----+----3----+----4----+----5----+----6----+- 0123456789012345678901234567890123456789012345678901234567890123456 Now is the time for all good men to come to the aid of their party. The letter 't' occurs at position(s): 7 11 33 41 44 55 64 */
// Sample for String::IndexOf(Char, Int32) using namespace System; int main() { String^ br1 = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-"; String^ br2 = "0123456789012345678901234567890123456789012345678901234567890123456"; String^ str = "Now is the time for all good men to come to the aid of their party."; int start; int at; Console::WriteLine(); Console::WriteLine( "All occurrences of 't' from position 0 to {0}.", str->Length - 1 ); Console::WriteLine( "{1}{0}{2}{0}{3}{0}", Environment::NewLine, br1, br2, str ); Console::Write( "The letter 't' occurs at position(s): " ); at = 0; start = 0; while ( (start < str->Length) && (at > -1) ) { at = str->IndexOf( 't', start ); if ( at == -1 ) break; Console::Write( "{0} ", at ); start = at + 1; } Console::WriteLine(); } /* This example produces the following results: All occurrences of 't' from position 0 to 66. 0----+----1----+----2----+----3----+----4----+----5----+----6----+- 0123456789012345678901234567890123456789012345678901234567890123456 Now is the time for all good men to come to the aid of their party. The letter 't' occurs at position(s): 7 11 33 41 44 55 64 */
.NET Framework
サポート対象: 4、3.5、3.0、2.0、1.1、1.0.NET Framework Client Profile
サポート対象: 4、3.5 SP1サポート対象:
Windows 7, Windows Vista SP1 以降, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core はサポート対象外), Windows Server 2008 R2 (SP1 以降で Server Core をサポート), Windows Server 2003 SP2
.NET Framework では、各プラットフォームのすべてのバージョンはサポートしていません。 サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。