String.LastIndexOfAny Metoda

Definicja

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode. Metoda zwraca wartość -1, jeśli znaki w tablicy nie znajdują się w tej instancji.

Przeciążenia

LastIndexOfAny(Char[])

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode.

LastIndexOfAny(Char[], Int32)

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode. Wyszukiwanie rozpoczyna się od określonej pozycji znaku i jest przeprowadzane w kierunku początku ciągu znaków.

LastIndexOfAny(Char[], Int32, Int32)

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode. Wyszukiwanie rozpoczyna się od określonej pozycji znaku i przechodzi do tyłu w kierunku początku ciągu dla określonej liczby pozycji znaków.

LastIndexOfAny(Char[])

Źródło:
String.Searching.cs
Źródło:
String.Searching.cs
Źródło:
String.Searching.cs

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode.

C#
public int LastIndexOfAny (char[] anyOf);

Parametry

anyOf
Char[]

Tablica znaków Unicode, zawierająca jeden znak lub więcej do odszukania.

Zwraca

Pozycja indeksu ostatniego wystąpienia w tym wystąpieniu, w którym znaleziono dowolny znakanyOf; -1, jeśli nie znaleziono żadnego znaku.anyOf

Wyjątki

anyOf to null.

Przykłady

Poniższy przykład znajduje indeks ostatniego wystąpienia dowolnego znaku w ciągu "is" w innym ciągu.

C#
// Sample for String.LastIndexOfAny(Char[])
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;
    string target = "is";
    char[] anyOf = target.ToCharArray();

    start = str.Length-1;
    Console.WriteLine("The last character occurrence  from position {0} to 0.", start);
    Console.WriteLine("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str);
    Console.Write("A character in '{0}' occurs at position: ", target);

    at = str.LastIndexOfAny(anyOf);
    if (at > -1)
        Console.Write(at);
    else
        Console.Write("(not found)");
    Console.Write("{0}{0}{0}", Environment.NewLine);
    }
}
/*
This example produces the following results:
The last character occurrence  from position 66 to 0.
0----+----1----+----2----+----3----+----4----+----5----+----6----+-
0123456789012345678901234567890123456789012345678901234567890123456
Now is the time for all good men to come to the aid of their party.

A character in 'is' occurs at position: 58


*/

Uwagi

Indeks numerowania rozpoczyna się od zera.

Ta metoda rozpoczyna wyszukiwanie w ostatniej pozycji znaku tego wystąpienia i przechodzi do tyłu w kierunku początku do momentu znalezienia znaku w anyOf lub zbadania pierwszej pozycji znaku. W wyszukiwaniu jest uwzględniana wielkość liter.

Ta metoda przeprowadza wyszukiwanie porządkowe (niewrażliwość na ustawienia kulturowe), gdzie znak jest uważany za równoważny innemu znakowi tylko wtedy, gdy ich wartości skalarne Unicode są takie same. Aby przeprowadzić wyszukiwanie wrażliwe na kulturę, należy użyć CompareInfo.LastIndexOf metody , w której wartość skalarna Unicode reprezentująca wstępnie skompilowany znak, taki jak ligatura "Æ" (U+00C6), może być uważana za równoważne każdemu wystąpieniu składników znaku w prawidłowej sekwencji, takich jak "AE" (U+0041, U+0045), w zależności od kultury.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

LastIndexOfAny(Char[], Int32)

Źródło:
String.Searching.cs
Źródło:
String.Searching.cs
Źródło:
String.Searching.cs

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode. Wyszukiwanie rozpoczyna się od określonej pozycji znaku i jest przeprowadzane w kierunku początku ciągu znaków.

C#
public int LastIndexOfAny (char[] anyOf, int startIndex);

Parametry

anyOf
Char[]

Tablica znaków Unicode, zawierająca jeden znak lub więcej do odszukania.

startIndex
Int32

Pozycja rozpoczęcia wyszukiwania. Wyszukiwanie jest kontynuowane od startIndex początku tego wystąpienia.

Zwraca

Pozycja indeksu ostatniego wystąpienia w tym wystąpieniu, w którym znaleziono dowolny znak anyOf ; -1, jeśli nie znaleziono znaku w anyOf lub jeśli bieżące wystąpienie ma Emptywartość .

Wyjątki

anyOf to null.

Bieżące wystąpienie nie jest równe Empty, i startIndex określa pozycję, która nie znajduje się w tym wystąpieniu.

Przykłady

Poniższy przykład znajduje indeks ostatniego wystąpienia dowolnego znaku w ciągu "is" w podciąg innego ciągu.

C#
// Sample for String.LastIndexOfAny(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;
    string target = "is";
    char[] anyOf = target.ToCharArray();

    start = (str.Length-1)/2;
    Console.WriteLine("The last character occurrence  from position {0} to 0.", start);
    Console.WriteLine("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str);
    Console.Write("A character in '{0}' occurs at position: ", target);

    at = str.LastIndexOfAny(anyOf, start);
    if (at > -1)
        Console.Write(at);
    else
        Console.Write("(not found)");
    Console.Write("{0}{0}{0}", Environment.NewLine);
    }
}
/*
This example produces the following results:
The last character occurrence  from position 33 to 0.
0----+----1----+----2----+----3----+----4----+----5----+----6----+-
0123456789012345678901234567890123456789012345678901234567890123456
Now is the time for all good men to come to the aid of their party.

A character in 'is' occurs at position: 12


*/

Uwagi

Indeks numerowania rozpoczyna się od zera.

Ta metoda rozpoczyna wyszukiwanie w startIndex pozycji znaku tego wystąpienia i przechodzi do tyłu w kierunku początku do momentu znalezienia znaku w anyOf lub zbadania pierwszej pozycji znaku. W wyszukiwaniu jest uwzględniana wielkość liter.

Ta metoda przeprowadza wyszukiwanie porządkowe (niewrażliwość na ustawienia kulturowe), gdzie znak jest uważany za równoważny innemu znakowi tylko wtedy, gdy ich wartości skalarne Unicode są takie same. Aby przeprowadzić wyszukiwanie wrażliwe na kulturę, należy użyć CompareInfo.LastIndexOf metody , w której wartość skalarna Unicode reprezentująca wstępnie skompilowany znak, taki jak ligatura "Æ" (U+00C6), może być uważana za równoważne każdemu wystąpieniu składników znaku w prawidłowej sekwencji, takich jak "AE" (U+0041, U+0045), w zależności od kultury.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

LastIndexOfAny(Char[], Int32, Int32)

Źródło:
String.Searching.cs
Źródło:
String.Searching.cs
Źródło:
String.Searching.cs

Raporty pozycji indeksu zaczynającego się od zera dla ostatniego wystąpienia — w tym przypadku jeden znak lub więcej, określone w tablicy Unicode. Wyszukiwanie rozpoczyna się od określonej pozycji znaku i przechodzi do tyłu w kierunku początku ciągu dla określonej liczby pozycji znaków.

C#
public int LastIndexOfAny (char[] anyOf, int startIndex, int count);

Parametry

anyOf
Char[]

Tablica znaków Unicode, zawierająca jeden znak lub więcej do odszukania.

startIndex
Int32

Pozycja rozpoczęcia wyszukiwania. Wyszukiwanie jest kontynuowane od startIndex początku tego wystąpienia.

count
Int32

Liczba pozycji znaku do zbadania.

Zwraca

Pozycja indeksu ostatniego wystąpienia w tym wystąpieniu, w którym znaleziono dowolny znak anyOf ; -1, jeśli nie znaleziono znaku w anyOf lub jeśli bieżące wystąpienie ma Emptywartość .

Wyjątki

anyOf to null.

Bieżące wystąpienie nie jest równe Empty, i count lub startIndex jest ujemne.

-lub-

Bieżące wystąpienie nie jest równe Empty, a startIndex minus count + 1 jest mniejsze niż zero.

Przykłady

Poniższy przykład znajduje indeks ostatniego wystąpienia dowolnego znaku w ciągu "aid" w podciąg innego ciągu.

C#
// Sample for String.LastIndexOfAny(Char[], Int32, 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;
    int count;
    string target = "aid";
    char[] anyOf = target.ToCharArray();

    start = ((str.Length-1)*2)/3;
    count = (str.Length-1)/3;
    Console.WriteLine("The last character occurrence from position {0} for {1} characters.", start, count);
    Console.WriteLine("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str);
    Console.Write("A character in '{0}' occurs at position: ", target);

    at = str.LastIndexOfAny(anyOf, start, count);
    if (at > -1)
        Console.Write(at);
    else
        Console.Write("(not found)");
    Console.Write("{0}{0}{0}", Environment.NewLine);
    }
}
/*
This example produces the following results:
The last character occurrence from position 44 for 22 characters.
0----+----1----+----2----+----3----+----4----+----5----+----6----+-
0123456789012345678901234567890123456789012345678901234567890123456
Now is the time for all good men to come to the aid of their party.

A character in 'aid' occurs at position: 27
*/

Uwagi

Indeks numerowania rozpoczyna się od zera.

Ta metoda rozpoczyna wyszukiwanie w startIndex pozycji znaku tego wystąpienia i przechodzi do tyłu w kierunku początku do momentu znalezienia znaku lub anyOfcount zbadania pozycji znaków. W wyszukiwaniu jest uwzględniana wielkość liter.

Ta metoda przeprowadza wyszukiwanie porządkowe (niewrażliwość na ustawienia kulturowe), gdzie znak jest uważany za równoważny innemu znakowi tylko wtedy, gdy ich wartości skalarne Unicode są takie same. Aby przeprowadzić wyszukiwanie wrażliwe na kulturę, należy użyć CompareInfo.LastIndexOf metody , w której wartość skalarna Unicode reprezentująca wstępnie skompilowany znak, taki jak ligatura "Æ" (U+00C6), może być uważana za równoważne każdemu wystąpieniu składników znaku w prawidłowej sekwencji, takich jak "AE" (U+0041, U+0045), w zależności od kultury.

Zobacz też

Dotyczy

.NET 9 i inne wersje
Produkt Wersje
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0