web-dev-qa-db-fra.com

Comment supprimer les 10 premiers caractères d'une chaîne?

Comment ignorer les 10 premiers caractères d'une chaîne?

Contribution:

str = "hello world!";

Sortie:

d!
70
csharper
str = "hello world!";
str.Substring(10, str.Length-10)

vous devrez effectuer les vérifications de longueur sinon cela renverrait une erreur

79
V4Vendetta

str = str.Remove(0,10); Supprime les 10 premiers caractères

ou

str = str.Substring(10); Crée une sous-chaîne du 11ème caractère à la fin de la chaîne.

Pour vos besoins, ils doivent fonctionner de manière identique.

180
crlanglois

La sous-chaîne est probablement ce que vous voulez, comme d'autres l'ont souligné. Mais juste pour ajouter une autre option au mélange ...

string result = string.Join(string.Empty, str.Skip(10));

Vous n'avez même pas besoin de vérifier la longueur à ce sujet! :) Si c'est moins de 10 caractères, vous obtenez une chaîne vide.

14
UrbanEsc

Substring a deux méthodes de surcharge:

public string Substring(int startIndex);//The substring starts at a specified character position and continues to the end of the string.

public string Substring(int startIndex, int length);//The substring starts at a specified character position and taking length no of character from the startIndex.

Donc, pour ce scénario, vous pouvez utiliser la première méthode comme celle ci-dessous:

var str = "hello world!";
str = str.Substring(10);

Ici le résultat est:

d!

Si vous pouvez appliquer un codage défensif en vérifiant sa longueur.

6
Md. Rousonur Jaman

La Substring a un paramètre appelé startIndex. Définissez-le en fonction de l'index que vous souhaitez utiliser.

5
Sascha

Pour:

var str = "hello world!";

Pour obtenir la chaîne résultante sans les 10 premiers caractères et une chaîne vide si la chaîne est inférieure ou égale à 10, vous pouvez utiliser:

var result = str.Length <= 10 ? "" : str.Substring(10);

ou

var result = str.Length <= 10 ? "" : str.Remove(0, 10);

La première variante est préférée car elle ne nécessite qu'un seul paramètre de méthode.

1

Vous pouvez utiliser la méthode Substring méthode qui prend un seul paramètre, qui est l’index à partir duquel démarrer.

Dans mon code ci-dessous, je traite du cas où la longueur est inférieure à votre index de départ souhaité et lorsque la longueur est égale à zéro.

string s = "hello world!";
s = s.Substring(Math.Max(0, Math.Min(10, s.Length - 1)));
1
George Duckett

Vous pouvez supprimer les caractères en utilisant la ligne ci-dessous, 

: - Première vérification que String a assez de caractère pour être supprimé , comme

   string temp="Hello Stack overflow";
   if(temp.Length>10)
   {
    string textIWant = temp.Remove(0, 10);
   }
1
Snack'Eyes

Utilisez la méthode de sous-chaîne.

string s = "hello world";
s=s.Substring(10, s.Length-10);
1
Ashley John

Il n'est pas nécessaire de spécifier la longueur dans la méthode Substring . Par conséquent:

string s = hello world;
string p = s.Substring(3);

p sera: 

"le monde".

La seule exception à traiter est ArgumentOutOfRangeException si startIndex est inférieure à zéro ou supérieure à la longueur de cette instance.

0
alex leo