String.IndexOfAny Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Hlásí index prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode. Metoda vrátí -1, pokud se v této instanci nenajdou znaky v poli.
Přetížení
| Name | Description |
|---|---|
| IndexOfAny(Char[]) |
Hlásí index založený na nule prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode. |
| IndexOfAny(Char[], Int32) |
Hlásí index založený na nule prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode. Hledání začíná na zadané pozici znaku. |
| IndexOfAny(Char[], Int32, Int32) |
Hlásí index založený na nule prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode. Hledání začíná na zadané pozici znaku a prozkoumá zadaný počet pozic znaků. |
IndexOfAny(Char[])
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
Hlásí index založený na nule prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode.
public:
int IndexOfAny(cli::array <char> ^ anyOf);
public int IndexOfAny(char[] anyOf);
member this.IndexOfAny : char[] -> int
Public Function IndexOfAny (anyOf As Char()) As Integer
Parametry
- anyOf
- Char[]
Pole znaků Unicode obsahující jeden nebo více znaků, které se mají vyhledat.
Návraty
Pozice indexu založeného na nule prvního výskytu v této instanci, kde byl nalezen libovolný znak; anyOf -1, pokud nebyl nalezen žádný znak anyOf .
Výjimky
anyOf je null.
Příklady
Následující příklad najde první samohlásku v řetězci.
char[] chars = { 'a', 'e', 'i', 'o', 'u', 'y',
'A', 'E', 'I', 'O', 'U', 'Y' };
String s = "The long and winding road...";
Console.WriteLine($"""
The first vowel in
'{s}'
is found at index {s.IndexOfAny(chars)}
""");
// The example displays the following output:
// The first vowel in
// 'The long and winding road...'
// is found at index 2
let chars = [| 'a'; 'e'; 'i'; 'o'; 'u'; 'y'
'A'; 'E'; 'I'; 'O'; 'U'; 'Y' |]
let s = "The long and winding road..."
printfn $"The first vowel in \n {s}\nis found at index {s.IndexOfAny chars}"
// The example displays the following output:
// The first vowel in
// The long and winding road...
// is found at index 2
Module Example1
Public Sub Run()
Dim chars() As Char = { "a"c, "e"c, "i"c, "o"c, "u"c, "y"c,
"A"c, "E"c, "I"c, "O"c, "U"c, "Y"c }
Dim s As String = "The long and winding road..."
Console.WriteLine("The first vowel in {2} {0}{2}is found at index {1}",
s, s.IndexOfAny(chars), vbCrLf)
End Sub
End Module
' The example displays the following output:
' The first vowel in
' The long and winding road...
' is found at index 2
Poznámky
Číslování indexů začíná od nuly.
Hledání pro anyOf rozlišuje malá a velká písmena. Pokud anyOf je prázdné pole, metoda vrátí -1.
Tato metoda provádí řadové vyhledávání (bez rozlišení jazykové verze), kde se znak považuje za ekvivalentní jinému znaku pouze v případě, že skalární hodnoty Unicode jsou stejné. Chcete-li provést vyhledávání citlivé na jazykovou verzi, použijte metodu CompareInfo.IndexOf , kde skalární hodnota Unicode představující předkomposovaný znak, například ligaturu "Æ" (U+00C6), může být v závislosti na jazykové verzi považována za ekvivalentní jakémukoli výskytu součástí znaku ve správné sekvenci, například "AE" (U+0041, U+0045).
Viz také
Platí pro
IndexOfAny(Char[], Int32)
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
Hlásí index založený na nule prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode. Hledání začíná na zadané pozici znaku.
public:
int IndexOfAny(cli::array <char> ^ anyOf, int startIndex);
public int IndexOfAny(char[] anyOf, int startIndex);
member this.IndexOfAny : char[] * int -> int
Public Function IndexOfAny (anyOf As Char(), startIndex As Integer) As Integer
Parametry
- anyOf
- Char[]
Pole znaků Unicode obsahující jeden nebo více znaků, které se mají vyhledat.
- startIndex
- Int32
Počáteční pozice hledání.
Návraty
Pozice indexu založeného na nule prvního výskytu v této instanci, kde byl nalezen libovolný znak; anyOf -1, pokud nebyl nalezen žádný znak anyOf .
Výjimky
anyOf je null.
startIndex je negativní.
nebo
startIndex je větší než počet znaků v této instanci.
Příklady
Následující příklad najde index výskytu libovolného znaku řetězce "is" v podřetězci jiného řetězce.
string br1 = "0----+----1----+----2----+----3" +
"----+----4----+----5----+----6----+-";
string br2 = "012345678901234567890123456789" +
"0123456789012345678901234567890123456";
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 / 2;
Console.WriteLine();
Console.WriteLine("The first character occurrence " +
$"from position {start} to {str.Length - 1}:");
Console.WriteLine($"""
{Environment.NewLine}{br1}{Environment.NewLine}
{br2}{Environment.NewLine}{str}{Environment.NewLine}
""");
Console.Write($"A character in '{target}' occurs at position: ");
at = str.IndexOfAny(anyOf, start);
if (at > -1)
Console.Write(at);
else
Console.Write("(not found)");
Console.WriteLine();
/*
The first character occurrence from position 33 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.
A character in 'is' occurs at position: 49
*/
// Sample for String.IndexOfAny(Char[], Int32)
open System
let br1 = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-"
let br2 = "0123456789012345678901234567890123456789012345678901234567890123456"
let str = "Now is the time for all good men to come to the aid of their party."
let target = "is"
let anyOf = target.ToCharArray()
let start = str.Length/2
printfn $"\nThe first character occurrence from position {start} to {str.Length - 1}."
printfn $"{br1}{Environment.NewLine}{br2}{Environment.NewLine}{str}{Environment.NewLine}"
printf $"A character in '{target}' occurs at position: "
let at = str.IndexOfAny(anyOf, start)
if at > -1 then
printfn $"{at}"
else
printfn "(not found)"
(*
The first character occurrence from position 33 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.
A character in 'is' occurs at position: 49
*)
' Sample for String.IndexOfAny(Char[], Int32)
Class Example2
Public Shared Sub Run()
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
Dim target As String = "is"
Dim anyOf As Char() = target.ToCharArray()
start = str.Length / 2
Console.WriteLine()
Console.WriteLine("Search for a character occurrence from position {0} to {1}.", _
start, str.Length - 1)
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.IndexOfAny(anyOf, start)
If at > - 1 Then
Console.Write(at)
Else
Console.Write("(not found)")
End If
Console.WriteLine()
End Sub
End Class
'
'
'Search for a character occurrence from position 33 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.
'
'A character in 'is' occurs at position: 49
'
Poznámky
Číslování indexů začíná od nuly. Parametr startIndex může být v rozsahu od 0 do jedné menší než délka instance řetězce.
Hledání se pohybuje od startIndex konce řetězce.
Hledání pro anyOf rozlišuje malá a velká písmena.
Tato metoda provádí řadové vyhledávání (bez rozlišení jazykové verze), kde je znak považován za ekvivalentní jinému znaku pouze v případě, že skalární hodnota Unicode je stejná. Chcete-li provést vyhledávání citlivé na jazykovou verzi, použijte metodu CompareInfo.IndexOf , kde skalární hodnota Unicode představující předkomposovaný znak, například ligaturu "Æ" (U+00C6), může být v závislosti na jazykové verzi považována za ekvivalentní jakémukoli výskytu součástí znaku ve správné sekvenci, například "AE" (U+0041, U+0045).
Viz také
Platí pro
IndexOfAny(Char[], Int32, Int32)
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
- Zdroj:
- String.Searching.cs
Hlásí index založený na nule prvního výskytu v této instanci libovolného znaku v zadaném poli znaků Unicode. Hledání začíná na zadané pozici znaku a prozkoumá zadaný počet pozic znaků.
public:
int IndexOfAny(cli::array <char> ^ anyOf, int startIndex, int count);
public int IndexOfAny(char[] anyOf, int startIndex, int count);
member this.IndexOfAny : char[] * int * int -> int
Public Function IndexOfAny (anyOf As Char(), startIndex As Integer, count As Integer) As Integer
Parametry
- anyOf
- Char[]
Pole znaků Unicode obsahující jeden nebo více znaků, které se mají vyhledat.
- startIndex
- Int32
Počáteční pozice hledání.
- count
- Int32
Počet pozic znaků, které je třeba prozkoumat.
Návraty
Pozice indexu založeného na nule prvního výskytu v této instanci, kde byl nalezen libovolný znak; anyOf -1, pokud nebyl nalezen žádný znak anyOf .
Výjimky
anyOf je null.
count nebo startIndex je negativní.
nebo
count
+
startIndex je větší než počet znaků v této instanci.
Příklady
Následující příklad najde index výskytu libovolného znaku řetězce "aid" v podřetězci jiného řetězce.
string br1 = "0----+----1----+----2----+----3----" +
"+----4----+----5----+----6----+-";
string br2 = "012345678901234567890123456789" +
"0123456789012345678901234567890123456";
string str = "Now is the time for all good men " +
"to come to the aid of their party.";
string target = "aid";
char[] anyOf = target.ToCharArray();
int start = (str.Length - 1) / 3;
int count = (str.Length - 1) / 4;
Console.WriteLine();
Console.WriteLine("The first character occurrence from " +
$"position {start} for {count} characters:");
Console.WriteLine($"""
{Environment.NewLine}{br1}{Environment.NewLine}{br2}
{Environment.NewLine}{str}{Environment.NewLine}
""");
Console.Write($"A character in '{target}' occurs at position: ");
int at = str.IndexOfAny(anyOf, start, count);
if (at > -1)
Console.Write(at);
else
Console.Write("(not found)");
Console.WriteLine();
/*
The first character occurrence from position 22 for 16 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
*/
// Sample for String.IndexOfAny(Char[], Int32, Int32)
open System
let br1 = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-"
let br2 = "0123456789012345678901234567890123456789012345678901234567890123456"
let str = "Now is the time for all good men to come to the aid of their party."
let target = "aid"
let anyOf = target.ToCharArray()
let start = (str.Length - 1) / 3
let count = (str.Length - 1) / 4
printfn $"\nThe first character occurrence from position {start} for {count} characters."
printfn $"{br1}{Environment.NewLine}{br2}{Environment.NewLine}{str}{Environment.NewLine}"
printf $"A character in '{target}' occurs at position: "
let at = str.IndexOfAny(anyOf, start, count)
if at > -1 then
printfn $"{at}"
else
printfn "(not found)"
(*
The first character occurrence from position 22 for 16 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
*)
' Sample for String.IndexOfAny(Char[], Int32, Int32)
Class Example3
Public Shared Sub Run()
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
Dim count As Integer
Dim target As String = "aid"
Dim anyOf As Char() = target.ToCharArray()
start =(str.Length - 1) / 3
count =(str.Length - 1) / 4
Console.WriteLine()
Console.WriteLine("The first 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.IndexOfAny(anyOf, start, count)
If at > - 1 Then
Console.Write(at)
Else
Console.Write("(not found)")
End If
Console.WriteLine()
End Sub
End Class
'
'The first character occurrence from position 22 for 16 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
'
Poznámky
Hledání začíná startIndex a pokračuje na startIndex + count -1. Znak v startIndex + count hledání není zahrnut.
Číslování indexů začíná od nuly. Parametr startIndex může být v rozsahu od 0 do jedné menší než délka instance řetězce.
Hledání pro anyOf rozlišuje malá a velká písmena.
Tato metoda provádí řadové vyhledávání (bez rozlišení jazykové verze), kde je znak považován za ekvivalentní jinému znaku pouze v případě, že skalární hodnota Unicode je stejná. Chcete-li provést vyhledávání citlivé na jazykovou verzi, použijte metodu CompareInfo.IndexOf , kde skalární hodnota Unicode představující předkomposovaný znak, například ligaturu "Æ" (U+00C6), může být v závislosti na jazykové verzi považována za ekvivalentní jakémukoli výskytu součástí znaku ve správné sekvenci, například "AE" (U+0041, U+0045).