Questa pagina è stata utile?
I suggerimenti relativi al contenuto di questa pagina sono importanti. Comunicaceli.
Altri suggerimenti?
1500 caratteri rimanenti
Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Metodo String.LastIndexOf (String)

Restituisce l'indice in base zero dell'ultima occorrenza di una stringa specificata all'interno di questa istanza.

Spazio dei nomi:  System
Assembly:  mscorlib (in mscorlib.dll)

public int LastIndexOf(
	string value
)

Parametri

value
Tipo: System.String
Stringa da cercare.

Valore restituito

Tipo: System.Int32
La posizione di indice iniziale in base zero di value se quella stringa viene trovata, oppure -1 se non lo è. Se value è String.Empty, il valore restituito è l'ultima posizione di indice in questa istanza.

EccezioneCondizione
ArgumentNullException

value è null.

La numerazione dell'indice ha inizio da zero. Ciò significa che il primo carattere della stringa si trova in corrispondenza dell'indice zero, mentre l'ultimo carattere si trova in corrispondenza di Length - 1.

La ricerca ha inizio dalla posizione dell'ultimo carattere di questa istanza e procede a ritroso verso l'inizio, finché non viene trovato il parametro value o non viene esaminata la posizione del primo carattere.

Il metodo consente di eseguire una ricerca per parola, con distinzione tra maiuscole e minuscole e in base alle impostazioni cultura, utilizzando le impostazioni cultura correnti.

I set di caratteri includono caratteri ignorabili, ovvero caratteri che non sono considerati durante l'esecuzione di un confronto linguistico o dipendente dalle impostazioni cultura. In una ricerca dipendente dalle impostazioni cultura, se value contiene un carattere ignorabile, il risultato è equivalente alla ricerca con il carattere rimosso. Se value è costituito solo da uno o più caratteri ignorabile, il metodo LastIndexOf(String) restituisce sempre String.Length a -1, che rappresenta l'ultima posizione di indice dell'istanza corrente. Nell'esempio seguente, il metodo LastIndexOf(String) viene utilizzato per individuare tre sotto stringhe (un trattino (U+00AD), un trattino seguito da "n" e un trattino seguito da "m") in due stringhe. Solo una delle stringhe contiene un segno meno facoltativo. Se nell'esempio viene eseguito in .NET Framework 4 o versioni successive, in ogni caso, poiché il trattino software è un carattere ignorable, il risultato al trattino software non sia stato incluso in value. Quando si cerca un trattino solo, il metodo restituisce 6 e 5. Questi valori corrispondono all'indice dell'ultimo carattere nelle due stringhe.


using System;

public class Example
{
   public static void Main()
   {
      string s1 = "ani\u00ADmal";
      string s2 = "animal";

      // Find the index of the last soft hyphen.
      Console.WriteLine(s1.LastIndexOf("\u00AD"));
      Console.WriteLine(s2.LastIndexOf("\u00AD"));

      // Find the index of the last soft hyphen followed by "n".
      Console.WriteLine(s1.LastIndexOf("\u00ADn"));
      Console.WriteLine(s2.LastIndexOf("\u00ADn"));

      // Find the index of the last soft hyphen followed by "m".
      Console.WriteLine(s1.LastIndexOf("\u00ADm"));
      Console.WriteLine(s2.LastIndexOf("\u00ADm"));
   }
}
// The example displays the following output:
//       6
//       5
//       1
//       1
//       4
//       3


Note per i chiamanti

Come illustrato in Procedure consigliate per l'utilizzo di stringhe in .NET Framework, si consiglia di evitare di chiamare metodi di confronto tra stringhe che sostituiscono i valori predefiniti e di chiamare invece metodi che richiedono parametri per essere specificati in modo esplicito. Per trovare l'ultimo indice di una sottostringa in una istanza di stringa utilizzando le regole di confronto delle impostazioni cultura correnti, chiamare l'overload del metodo LastIndexOf(String, StringComparison) passando un valore di StringComparison.CurrentCulture nel relativo parametro comparisonType.

Nell'esempio seguente vengono rimossi i tag HTML di apertura e chiusura da una stringa se questa inizia o termina con i tag. Se una stringa termina con una parentesi di chiusura (">"), nell'esempio viene utilizzato il metodo LastIndexOf per individuare l'inizio del tag di fine.


using System;

public class Example 
{
   public static void Main() 
   {
      string[] strSource = { "<b>This is bold text</b>", "<H1>This is large Text</H1>",
               "<b><i><font color=green>This has multiple tags</font></i></b>",
               "<b>This has <i>embedded</i> tags.</b>",
               "This line ends with a greater than symbol and should not be modified>" };

      // Strip HTML start and end tags from each string if they are present.
      foreach (string s in strSource)
      {
         Console.WriteLine("Before: " + s);
         string item = s;
         // Use EndsWith to find a tag at the end of the line.
         if (item.Trim().EndsWith(">")) 
         {
            // Locate the opening tag.
            int endTagStartPosition = item.LastIndexOf("</");
            // Remove the identified section, if it is valid.
            if (endTagStartPosition >= 0 )
               item = item.Substring(0, endTagStartPosition);

            // Use StartsWith to find the opening tag.
            if (item.Trim().StartsWith("<"))
            {
               // Locate the end of opening tab.
               int openTagEndPosition = item.IndexOf(">");
               // Remove the identified section, if it is valid.
               if (openTagEndPosition >= 0)
                  item = item.Substring(openTagEndPosition + 1);
            }      
         }
         // Display the trimmed string.
         Console.WriteLine("After: " + item);
         Console.WriteLine();
      }                   
   }
}
// The example displays the following output:
//    Before: <b>This is bold text</b>
//    After: This is bold text
//    
//    Before: <H1>This is large Text</H1>
//    After: This is large Text
//    
//    Before: <b><i><font color=green>This has multiple tags</font></i></b>
//    After: <i><font color=green>This has multiple tags</font></i>
//    
//    Before: <b>This has <i>embedded</i> tags.</b>
//    After: This has <i>embedded</i> tags.
//    
//    Before: This line ends with a greater than symbol and should not be modified>
//    After: This line ends with a greater than symbol and should not be modified>


.NET Framework

Supportato in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Libreria di classi portabile

Supportato in: Libreria di classi portabile

.NET per applicazioni Windows Store

Supportato in: Windows 8

.NET per applicazioni Windows Phone

Supportato in: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Aggiunte alla community

AGGIUNGI
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?
Mostra:
© 2015 Microsoft