(0) exportieren Drucken
Alle erweitern

String.IndexOf-Methode (Char, Int32)

Aktualisiert: November 2007

Gibt den Index des ersten Vorkommens des angegebenen Unicode-Zeichens in dieser Zeichenfolge an. Die Suche beginnt an einer angegebenen Zeichenposition.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public int IndexOf(
	char value,
	int startIndex
)
public int IndexOf(
	char value,
	int startIndex
)
public function IndexOf(
	value : char, 
	startIndex : int
) : int

Parameter

value
Typ: System.Char
Ein zu suchendes Unicode-Zeichen.
startIndex
Typ: System.Int32
Die Anfangsposition der Suche.

Rückgabewert

Typ: System.Int32
Die nullbasierte Indexposition von value, wenn dieses Zeichen gefunden wurde, andernfalls -1.

AusnahmeBedingung
ArgumentOutOfRangeException

startIndex ist kleiner als 0 (null) oder bezeichnet eine Position hinter dem Ende dieser Instanz.

Indexnummerierung beginnt mit 0 (null). Der startIndex-Parameter kann zwischen 0 und eins kleiner als die Länge der Zeichenfolgeninstanz liegen.

Die Suche erfolgt von startIndex bis zum Ende der Zeichenfolge.

Bei der Suche nach value wird die Groß- und Kleinschreibung berücksichtigt.

Bei dieser Methode wird eine (kulturunabhängige) Suche auf Basis von Ordnungszahlen durchgeführt, wobei ein Zeichen nur dann als Äquivalent eines anderen Zeichens betrachtet wird, wenn die skalaren Unicode-Werte gleich sind. Für die Durchführung einer kulturabhängigen Suche verwenden Sie die CompareInfo.IndexOf-Methode, bei der ein skalarer Unicode-Wert, der ein zusammengesetztes Zeichen wie die Ligatur "Æ" (U+00C6) darstellt, je nach Kultur als Äquivalent für jedes Auftreten der Teile des Zeichens in der richtigen Reihenfolge betrachtet werden kann, beispielsweise "AE" (U+0041, U+0045).

Im folgenden Codebeispiel wird die IndexOf-Methode veranschaulicht.

// 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)
import System.*;

class Sample
{
    public static void main(String[] args)
    {
        String br1 = "0----+----1----+----2----+----3----+----4----+----5----"
            + "+----6----+-";
        String br2 = "01234567890123456789012345678901234567890123456789012345"
            + "67890123456";
        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}.", 
            (Int32)(str.get_Length() - 1));
        Console.Write("{1}{0}", Environment.get_NewLine(), br1);
        Console.Write("{1}{0}", Environment.get_NewLine(), br2);
        Console.WriteLine("{1}{0}", Environment.get_NewLine(), str);
        Console.Write("The letter 't' occurs at position(s): ");

        at = 0;
        start = 0;
        while (start < str.get_Length() && at > -1) {
            at = str.IndexOf('t', start);
            if (at == -1) {
                break;
            }
            Console.Write("{0} ", (Int32)at);
            start = at + 1;
        }
        Console.WriteLine();
    } //main
} //Sample
/*
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

*/


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile für Smartphone, Windows Mobile für Pocket PC, Xbox 360

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

.NET Framework

Unterstützt in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 3.5, 2.0, 1.0

XNA Framework

Unterstützt in: 2.0, 1.0

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft