Troncare una stringa in C#
Questo tutorial introdurrà il metodo per troncare una variabile di stringa a una lunghezza specificata in C#.
Troncare una stringa con il metodo String.Substring()
in C#
Sfortunatamente, non esiste un metodo predefinito per troncare una stringa in C#. Dobbiamo scrivere codice con la nostra logica per questo scopo. Il metodo String.Substring(x, y)
recupera una sottostringa dalla stringa che inizia dall’indice x
e ha una lunghezza di y
. Possiamo usare il metodo String.Substring()
e LINQ per creare un metodo di estensione che funzioni la variabile stringa. Il seguente esempio di codice ci mostra come troncare una variabile stringa con il metodo String.Substring()
in C#.
using System;
namespace truncate_string {
public static class StringExt {
public static string Truncate(this string variable, int Length) {
if (string.IsNullOrEmpty(variable))
return variable;
return variable.Length <= Length ? variable : variable.Substring(0, Length);
}
}
class Program {
static void Main(string[] args) {
string variable = "This is a long, very long string and we want to truncate it.";
variable = variable.Truncate(22);
Console.WriteLine(variable);
}
}
}
Produzione:
This is a long, very l
Nel codice precedente, abbiamo troncato la variabile stringa variable
a una lunghezza di 22
caratteri con il metodo String.Substring()
in C#. Quindi abbiamo creato il metodo di estensione Truncate()
che prende la lunghezza desiderata e tronca la stringa alla lunghezza desiderata. Se la variabile stringa è null
o vuota, il metodo Truncate()
restituisce la stringa. Se la lunghezza desiderata è maggiore della lunghezza della stringa, restituisce la stringa originale. Se è minore, il metodo Truncate()
tronca la stringa alla lunghezza desiderata con il metodo String.Substring()
e restituisce la nuova copia troncata della stringa.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn