Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

String.Split méthode (Char[], Int32)

 

Fractionne une chaîne en un nombre maximal de sous-chaînes en fonction des caractères contenus dans un tableau. Vous pouvez aussi spécifier le nombre maximal de sous-chaînes à retourner.

Espace de noms:   System
Assembly:  mscorlib (dans mscorlib.dll)

public string[] Split(
	char[] separator,
	int count
)

Paramètres

separator
Type: System.Char[]

Tableau de caractères qui délimite les sous-chaînes de cette chaîne, tableau vide qui ne contient pas de délimiteurs ou null.

count
Type: System.Int32

Nombre maximal de sous-chaînes à retourner.

Valeur de retour

Type: System.String[]

Tableau dont les éléments contiennent les sous-chaînes de cette instance qui sont délimitées par un ou plusieurs caractères dans separator. Pour plus d'informations, consultez la section Remarques.

Exception Condition
ArgumentOutOfRangeException

count est un nombre négatif.

Caractères de séparation ne sont pas inclus dans les éléments du tableau retourné.

Si cette instance ne contient aucun des caractères de separator, le tableau retourné se compose d’un élément unique qui contient cette instance. Si count est égal à zéro, un tableau vide est retourné.

Si le separator paramètre est null ou ne contient aucun caractère, espaces blancs sont supposés pour être des séparateurs. Espaces blancs sont définis par la norme Unicode et retournent true s’ils sont passés à la Char.IsWhiteSpace (méthode).

Chaque élément de separator définit un caractère délimiteur séparé. Si deux délimiteurs sont adjacents, ou un délimiteur est trouvé au début ou à la fin de cette instance, l’élément de tableau correspondant contient Empty.

S’il y a plus de count sous-chaînes de cette instance, la première count sous-chaînes moins 1 sont retournées dans la première count éléments moins 1 de la valeur de retour et les autres caractères dans cette instance sont retournés dans le dernier élément de la valeur de retour.

Si count est supérieur au nombre de sous-chaînes, les sous-chaînes disponibles sont retournées et aucune exception n’est levée.

Le tableau suivant fournit des exemples.

Valeur de chaîne

Séparateur

Count

Tableau retourné

"42, 12, 19"

nouveau Char [] {',', ' '} (c#)

Char() = {«, » c, « « c} (Visual Basic)

2

{"42", " 12, 19"}

"42..12..19"

nouveau Char [] {'. '} (C#)

Char() = {«. » c} (Visual Basic)

4

{"42", "", "12", ".19"}

« Banana »

nouveau Char [] {'. '} (C#)

Char() = {«. » c} (Visual Basic)

2

{« Banana »}

« Darb\nSmarba » (c#)

« Darb » se vbLf se « Smarba » (Visual Basic)

nouvelle Char [] {} (c#)

Char() = {} (Visual Basic)

1

{« Darb\nSmarba »} (C#)

« Darb » se vbLf se « Smarba » (Visual Basic)

« Darb\nSmarba » (c#)

« Darb » se vbLf se « Smarba » (Visual Basic)

nouvelle Char [] null (c#)

Char() = Nothing

2

{« Darb », « Smarba »}

« Darb\nSmarba » (c#)

« Darb » se vbLf se « Smarba » (Visual Basic)

nouvelle Char [] null (c#)

Char() = Nothing

100

{« Darb », « Smarba »}

LeSplit méthodes d’allouent de mémoire pour l’objet tableau retourné et un String objet pour chaque élément du tableau. Si votre application nécessite des performances optimales, ou si la gestion de l’allocation de mémoire est critique dans votre application, envisagez d’utiliser le IndexOf ou IndexOfAny (méthode) et éventuellement le Compare (méthode), pour trouver une sous-chaîne dans une chaîne.

Si vous fractionnez une chaîne au caractère de séparation, utilisez la IndexOf ou IndexOfAny méthode de localisation d’un caractère de séparation dans la chaîne. Si vous fractionnez une chaîne à une chaîne de séparation, utilisez la IndexOf ou IndexOfAny méthode pour rechercher le premier caractère de la chaîne de séparateur. Utilisez ensuite le Compare méthode pour déterminer si les caractères après le premier caractère sont égaux aux caractères restants de la chaîne de séparateur.

En outre, si le même jeu de caractères est utilisé pour fractionner des chaînes en plusieurs Split des appels de méthode, envisagez la création d’un tableau unique et son référencement dans chaque appel de méthode. Cela réduit considérablement la charge supplémentaire de chaque appel de méthode.

Remarques à l’attention des appelants :

Dans le .NET Framework 3.5 et les versions antérieures, si le Split méthode est passée un separator qui est null ou ne contient aucun caractère, la méthode utilise un jeu de caractères légèrement différent pour fractionner la chaîne à la Trim fait de la méthode pour ajuster la chaîne. Dans le .NET Framework 4, les deux méthodes utilisent un jeu identique d’espaces blancs Unicode.

L’exemple suivant montre comment count affecte le nombre de chaînes retournées par Split.

using System;

public class Example
{
   public static void Main() 
   {
      string delimStr = " ,.:";
      char [] delimiter = delimStr.ToCharArray();
      string words = "one two,three:four.";
      string [] split = null;

      Console.WriteLine("The delimiters are -{0}-", delimStr);
      for (int x = 1; x <= 5; x++) {
         split = words.Split(delimiter, x);
         Console.WriteLine("\ncount = {0,2} ..............", x);
         foreach (var s in split) {
             Console.WriteLine("-{0}-", s);
         }
      }
   }
}
// The example displays the following output:
//       The delimiters are - ,.:-
//       count =  1 ..............
//       -one two,three:four.-
//       count =  2 ..............
//       -one-
//       -two,three:four.-
//       count =  3 ..............
//       -one-
//       -two-
//       -three:four.-
//       count =  4 ..............
//       -one-
//       -two-
//       -three-
//       -four.-
//       count =  5 ..............
//       -one-
//       -two-
//       -three-
//       -four-
//       --

Plateforme Windows universelle
Disponible depuis 8
.NET Framework
Disponible depuis 1.1
Bibliothèque de classes portable
Pris en charge dans : plateformes .NET portables
Silverlight pour Windows Phone
Disponible depuis 8.0
Windows Phone
Disponible depuis 8.1
Retour au début
Afficher: