Molto spesso capita di dover troncare una stringa più lunga di un determinato numero di caratteri. Per questo genere di operazione esiste il metodo Substring della classe String. Questo metodo accetta l'indice iniziale e il numero di caratteri che si vogliono prendere di una stringa e ritorna la nuova stringa che corrisponde ai parametri.
var newString = "abc".Substring(0, 2);
In questo esempio, estrapoliamo i primi due caratteri dalla stringa abc e quindi la variabile newString conterrà il valore ab.
Uno dei problemi del metodo substring è che se eccediamo l'indice finale di una stringa, otteniamo un'eccezione. Se ad esempio dalla stringa abc recuperiamo i primi 5 caratteri o recuperiamo 2 caratteri a partire dall'ultimo, il metodo scatena un'eccezione. Se da un lato questa cosa è corretta, dall'altro potremmo voler ignorare il problema e restituire un valore che arriva fino alla fine della stringa. Nel prossimo esempio di codice mostriamo un esempio di come tornare i primi n carattri di una stringa ed evitare un'eccezione se la stringa è più corta.
public static string SmartSubstring(this string input, int length) { if (input == null) return null; if (input.Length > length) return input.Substring(0, length) + " ..."; else return input; }
Il metodo SmartSubstring verifica se il numero di caratteri cercati è superiore alla lunghezza della stringa. In caso positivo torna l'intera stringa, altrimenti torna il numero di caratteri cercati seguito da tre puntini.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Utilizzare angular-cli per creare una direttiva in #angular2 https://aspit.co/bft di @sm15455
- Disponibile la prima preview di #VS2022, con la preview 5 di #dotnet6 https://aspit.co/b7x
- Due nuovi controlli ed esempi in VB nel Windows Phone Toolkit di febbraio 2011
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- le impostazioni sono su #windowslive, quindi basta il liveid per avere tutte le ... http://aspitalia.com/build-win8 #BldWin
- le versioni Community, Professional e Enterprise di #VS2019 sono disponibili al download.su #MSDN downloads ci sono anche le chiavi. download a partire da https://aspit.co/bur
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Proteggere le risorse Azure con private link e private endpoints
- Effettuare l'encoding e il decoding JPEG delle immagini con Windows Phone
- la nostra app per #win8 è nello store che vi aspetta da qualche mese: provatela! contenuti, forum e push! https://aspit.co/pd