String.IndexOfAny Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Segnala l'indice della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata. Il metodo restituisce -1 se i caratteri nella matrice non vengono trovati in questa istanza.
Overload
| Nome | Descrizione |
|---|---|
| IndexOfAny(Char[]) |
Restituisce l'indice in base zero della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata. |
| IndexOfAny(Char[], Int32) |
Restituisce l'indice in base zero della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata. La ricerca inizia in corrispondenza di una posizione di carattere specificata. |
| IndexOfAny(Char[], Int32, Int32) |
Restituisce l'indice in base zero della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata. La ricerca inizia in corrispondenza di una posizione di carattere specificata ed esamina un numero specificato di posizioni dei caratteri. |
IndexOfAny(Char[])
Restituisce l'indice in base zero della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata.
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
Parametri
- anyOf
- Char[]
Matrice di caratteri Unicode contenente uno o più caratteri da cercare.
Valori restituiti
Posizione dell'indice in base zero della prima occorrenza in questa istanza in cui è stato trovato qualsiasi carattere in anyOf ; -1 se non è stato trovato alcun carattere in anyOf .
Eccezioni
anyOf è null.
Esempio
Nell'esempio seguente viene trovata la prima vocale in una stringa.
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
Commenti
La numerazione dell'indice inizia da zero.
La ricerca anyOf fa distinzione tra maiuscole e minuscole. Se anyOf è una matrice vuota, il metodo restituisce -1.
Questo metodo esegue una ricerca ordinale (senza distinzione tra impostazioni cultura), in cui un carattere viene considerato equivalente a un altro carattere solo se i valori scalari Unicode sono uguali. Per eseguire una ricerca sensibile alle impostazioni cultura, usare il CompareInfo.IndexOf metodo , in cui un valore scalare Unicode che rappresenta un carattere precomposto, ad esempio la legatura "Æ" (U+00C6), può essere considerata equivalente a qualsiasi occorrenza dei componenti del carattere nella sequenza corretta, ad esempio "AE" (U+0041, U+0045), a seconda delle impostazioni cultura.
Vedi anche
Si applica a
IndexOfAny(Char[], Int32)
Restituisce l'indice in base zero della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata. La ricerca inizia in corrispondenza di una posizione di carattere specificata.
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
Parametri
- anyOf
- Char[]
Matrice di caratteri Unicode contenente uno o più caratteri da cercare.
- startIndex
- Int32
Posizione iniziale della ricerca.
Valori restituiti
Posizione dell'indice in base zero della prima occorrenza in questa istanza in cui è stato trovato qualsiasi carattere in anyOf ; -1 se non è stato trovato alcun carattere in anyOf .
Eccezioni
anyOf è null.
startIndex è negativo.
oppure
startIndex è maggiore del numero di caratteri in questa istanza.
Esempio
Nell'esempio seguente viene trovato l'indice dell'occorrenza di qualsiasi carattere della stringa "is" all'interno di una sottostringa di un'altra stringa.
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
'
Commenti
La numerazione dell'indice inizia da zero. Il startIndex parametro può variare da 0 a uno minore della lunghezza dell'istanza di stringa.
La ricerca varia da startIndex alla fine della stringa.
La ricerca anyOf fa distinzione tra maiuscole e minuscole.
Questo metodo esegue una ricerca ordinale (senza distinzione tra impostazioni cultura), in cui un carattere viene considerato equivalente a un altro carattere solo se il valore scalare Unicode è lo stesso. Per eseguire una ricerca sensibile alle impostazioni cultura, usare il CompareInfo.IndexOf metodo , in cui un valore scalare Unicode che rappresenta un carattere precomposto, ad esempio la legatura "Æ" (U+00C6), può essere considerata equivalente a qualsiasi occorrenza dei componenti del carattere nella sequenza corretta, ad esempio "AE" (U+0041, U+0045), a seconda delle impostazioni cultura.
Vedi anche
Si applica a
IndexOfAny(Char[], Int32, Int32)
Restituisce l'indice in base zero della prima occorrenza in questa istanza di qualsiasi carattere in una matrice di caratteri Unicode specificata. La ricerca inizia in corrispondenza di una posizione di carattere specificata ed esamina un numero specificato di posizioni dei caratteri.
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
Parametri
- anyOf
- Char[]
Matrice di caratteri Unicode contenente uno o più caratteri da cercare.
- startIndex
- Int32
Posizione iniziale della ricerca.
- count
- Int32
Numero di posizioni di caratteri da esaminare.
Valori restituiti
Posizione dell'indice in base zero della prima occorrenza in questa istanza in cui è stato trovato qualsiasi carattere in anyOf ; -1 se non è stato trovato alcun carattere in anyOf .
Eccezioni
anyOf è null.
count o startIndex è negativo.
oppure
count
+
startIndex è maggiore del numero di caratteri in questa istanza.
Esempio
Nell'esempio seguente viene trovato l'indice dell'occorrenza di qualsiasi carattere della stringa "aid" all'interno di una sottostringa di un'altra stringa.
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
'
Commenti
La ricerca inizia da startIndex e continua a startIndex + count -1. Il carattere in startIndex + count non è incluso nella ricerca.
La numerazione dell'indice inizia da zero. Il startIndex parametro può variare da 0 a uno minore della lunghezza dell'istanza di stringa.
La ricerca anyOf fa distinzione tra maiuscole e minuscole.
Questo metodo esegue una ricerca ordinale (senza distinzione tra impostazioni cultura), in cui un carattere viene considerato equivalente a un altro carattere solo se il valore scalare Unicode è lo stesso. Per eseguire una ricerca sensibile alle impostazioni cultura, usare il CompareInfo.IndexOf metodo , in cui un valore scalare Unicode che rappresenta un carattere precomposto, ad esempio la legatura "Æ" (U+00C6), può essere considerata equivalente a qualsiasi occorrenza dei componenti del carattere nella sequenza corretta, ad esempio "AE" (U+0041, U+0045), a seconda delle impostazioni cultura.