Comment supprimer les espaces entre les caractères en c #?
Trim()
peut être utilisé pour supprimer les espaces vides au début et à la fin de la chaîne. Par exemple, " C Sharp ".Trim()
results "C Sharp"
.
Mais comment transformer la chaîne en CSharp
? Nous pouvons supprimer l'espace en utilisant une boucle for
ou for each
avec une variable temporaire. Mais y a-t-il une méthode intégrée dans C#(.Net framework 3.5)
pour faire ceci comme Trim()
?
Vous pouvez utiliser String.Replace method
string str = "C Sharp";
str = str.Replace(" ", "");
ou si vous souhaitez supprimer tous les caractères d'espacement (espace, tabulations, sauts de ligne ...)
string str = "C Sharp";
str = Regex.Replace(str, @"\s", "");
Utilisez String.Replace pour remplacer tous les espaces vides par rien.
par exemple
string newString = myString.Replace(" ", "");
Si vous voulez garder un espace entre chaque mot. cela devrait le faire ..
public static string TrimSpacesBetweenString(string s)
{
var mystring =s.RemoveTandNs().Split(new string[] {" "}, StringSplitOptions.None);
string result = string.Empty;
foreach (var mstr in mystring)
{
var ss = mstr.Trim();
if (!string.IsNullOrEmpty(ss))
{
result = result + ss+" ";
}
}
return result.Trim();
}
il va supprimer la chaîne entre la chaîne Donc, si l'entrée est
var s ="c sharp";
result will be "c sharp";
//Remove spaces from a string just using substring method and a for loop
static void Main(string[] args)
{
string businessName;
string newBusinessName = "";
int i;
Write("Enter a business name >>> ");
businessName = ReadLine();
for(i = 0; i < businessName.Length; i++)
{
if (businessName.Substring(i, 1) != " ")
{
newBusinessName += businessName.Substring(i, 1);
}
}
WriteLine("A cool web site name could be www.{0}.com", newBusinessName);
}
J'ai trouvé cette méthode intéressante pour construire une classe utilisant une propriété calculée, par exemple, un "productName" et en supprimant les espaces pour créer une URL qui correspondra à une image utilisant le nom du produit sans espaces. Par exemple:
namespace XXX.Models
{
public class Product
{
public int ProductID { get; set; }
public string ProductName { get; set; }
public string ProductDescription { get; set; }
public string ProductImage
{
get { return ProductName.Replace(" ", string.Empty) + ".jpg"; }
}
}
}
Donc, dans cette réponse, j'ai utilisé une méthode très similaire à w69rdy, mais je l'ai utilisée dans un exemple. De plus, j'ai utilisé string.Empty au lieu de "". Et bien qu’après .Net 2.0, il n’y ait plus aucune différence, il est beaucoup plus facile à lire et à comprendre pour les autres utilisateurs qui pourraient avoir besoin de lire mon code. Je préfère aussi cela parce que je me perds parfois dans toutes les citations que je pourrais avoir dans un bloc de code.
var str=" c sharp "; str = str.Trim();
str = Regex.Replace(str, @"\s+", " "); ///"c sharp"
string myString = "C Sharp".Replace(" ", "");