Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

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

Retourne un tableau de chaînes qui contient les sous-chaînes de cette instance, délimitées par les éléments d'un tableau de caractères Unicode spécifié.

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

public string[] Split(
	params char[] separator
)

Paramètres

separator
Type : System.Char[]
Tableau de caractères Unicode qui délimitent les sous-chaînes de cette instance, tableau vide qui ne contient pas de délimiteur, ou null.

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 Notes.

Les caractères délimiteurs 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 seul élément contenant cette instance.

Si le paramètre separator est null ou ne contient pas de caractères, les délimiteurs sont supposés être des espaces blancs. Les caractères d'espace de blanc sont définis par la norme Unicode et retournent la valeur true s'ils sont passés à la méthode Char.IsWhiteSpace.

Chaque élément de separator définit un caractère délimiteur séparé. Si deux délimiteurs sont adjacents, ou qu'un délimiteur se trouve en début ou en fin de cette instance, l'élément de tableau correspondant contient Empty. Le tableau suivant fournit des exemples.

Valeur de chaîne

Separator

Tableau retourné

"42, 12, 19"

new Char[] {',', ' '} (C#)

Char() = {","c, " "c}) (Visual Basic)

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

"42..12..19"

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

Char() = {"."c} (Visual Basic)

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

"Banane"

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

Char() = {"."c} (Visual Basic)

{"Banane"}

"Darb\nSmarba" (C#)

"Darb" & vbLf & "Smarba" (Visual Basic)

new Char[] {} (C#)

Char() = {} (Visual Basic)

{"Darb", "Smarba"}

"Darb\nSmarba" (C#)

"Darb" & vbLf & "Smarba" (Visual Basic)

null (C#)

Nothing (Visual Basic)

{"Darb", "Smarba"}

Considérations sur les performances

Les méthodes Split allouent de la mémoire pour l'objet tableau retourné et un objet String pour chaque élément du tableau. Si votre application requiert des performances optimales ou si la gestion de l'allocation de mémoire est critique dans votre application, envisagez d'utiliser la méthode IndexOf ou IndexOfAny, et éventuellement la méthode Compare, pour localiser une sous-chaîne dans une chaîne.

Si vous fractionnez une chaîne au caractère de séparation, utilisez la méthode IndexOf ou IndexOfAny pour rechercher un caractère de séparation dans la chaîne. Si vous fractionnez une chaîne au niveau d'une chaîne de séparation, utilisez la méthode IndexOf ou IndexOfAny pour rechercher le premier caractère de la chaîne de séparation. Puis utilisez la méthode Compare pour déterminer si les caractères suivant ce premier caractère sont égaux aux caractères restants de la chaîne de séparation.

De plus, si le même jeu de caractères est utilisé pour fractionner des chaînes en plusieurs appels de méthode Split, 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 surcharge supplémentaire de chaque appel de méthode.

Remarques à l'attention des appelants

Dans .NET Framework 3.5 et les versions antérieures, si un separator est passé à la méthode Split qui est null ou ne contient pas de caractères, la méthode utilise un jeu légèrement différent de caractères pour fractionner la chaîne que la méthode Trim fait pour découper 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 extraire des mots individuels d'un bloc de texte en traitant les espaces blancs et les signes de ponctuation comme des séparateurs. Le tableau de caractères passé au paramètre separator de la méthode String.Split(Char[]) se compose d'un espace et d'une tabulation, accompagnés de symboles de ponctuation courants.


using System;

public class SplitTest {
    public static void Main() {

        string words = "This is a list of words, with: a bit of punctuation" +
                       "\tand a tab character.";

        string [] split = words.Split(new Char [] {' ', ',', '.', ':', '\t' });

        foreach (string s in split) {

            if (s.Trim() != "")
                Console.WriteLine(s);
        }
    }
}
// The example displays the following output to the console:
//       This
//       is
//       a
//       list
//       of
//       words
//       with
//       a
//       bit
//       of
//       punctuation
//       and
//       a
//       tab
//       character


.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications du Windows Store

Pris en charge dans : Windows 8

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft