| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/String/split | [Back] [Original] |
Get to know MDN better
Cette page a t traduite partir de l'anglais par la communaut. Vous pouvez contribuer en rejoignant la communaut francophone sur MDN Web Docs.
Cette fonctionnalit est bien tablie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
La mthode split() divise une chane de caractres en une liste ordonne de sous-chanes, place ces sous-chanes dans un tableau et retourne le tableau. La division est effectue en recherchant un motif ; o le motif est fourni comme premier paramtre dans l'appel de la mthode.
const str = "The quick brown fox jumps over the lazy dog.";
const words = str.split(" ");
console.log(words[3]);
// Expected output: "fox"
const chars = str.split("");
console.log(chars[8]);
// Expected output: "k"
const strCopy = str.split();
console.log(strCopy);
// Expected output: Array ["The quick brown fox jumps over the lazy dog."]
str.split([separator[, limit]])
separator FacultatifLe motif dcrivant o chaque sparation doit se produire. Le separator peut tre une simple chane de caractres ou peut tre une expression rgulire.
separator n'est qu'un seul caractre ; il est utilis pour diviser une chane dlimite. Par exemple, une chane contenant des valeurs spares par des tabulations (TSV) pourrait tre analyse en passant un caractre de tabulation comme sparateur, comme ceci : myString.split("\t").separator contient plusieurs caractres, cette squence de caractres entire doit tre trouve afin de diviser la chane.separator est omis ou n'apparat pas dans la chane str, le tableau retourn contient un lment constitu de la chane entire.separator apparat au dbut (ou la fin) de la chane, il a quand mme l'effet de division. Le rsultat est une chane vide (c'est--dire de longueur nulle), qui apparat la premire (ou dernire) position du tableau retourn.separator est une chane vide (""), la chane str est convertie en un tableau de chacun de ses "caractres" UTF-16.Attention :
Lorsque une chane vide ("") est utilise comme sparateur, la chane n'est pas divise par des caractres perus par l'utilisateur (grappes de graphmes) ou des caractres unicodes (codepoints), mais par des units de code UTF-16. Cela dtruit les paires de substituts. Voir Comment obtenir une chane de caractres vers un tableau de caractres en JavaScript ? sur StackOverflow.
limit FacultatifUn nombre entier non ngatif spcifiant une limite sur le nombre de sous-chanes inclure dans le tableau. S'il est fourni, il divise la chane de caractres chaque occurrence du separator spcifi, mais s'arrte lorsque la limit (limite) d'entres a t atteinte dans le tableau. Tout texte restant n'est pas du tout inclus dans le tableau.
limit (limite), si la fin de la chane de caractres est atteinte avant que la limite ne soit atteinte.limit est paramtr sur 0, un tableau vide [] est retourn.Un tableau (Array) qui contient les fragments de la chane de caractres, dcoupe en fonction du sparateur indiqu.
Lorsqu'il est trouv, separator est supprim de la chane de caractre, et les sous-chanes sont retournes dans un tableau.
Si separator est une expression rgulire avec des parenthses de capture, alors chaque fois que separator correspond, les rsultats (y compris tout rsultat undefined) des parenthses de capture sont joints au tableau de sortie.
Si le sparateur est un tableau, alors ce tableau est converti en une chane de caractres et est utilis comme sparateur.
split()Lorsque la chane de caractres est vide, split() retourne un tableau contenant une chane de caractres vide, plutt qu'un tableau vide. Si la chane et le sparateur sont tous deux des chanes vides, un tableau vide est retourn.
const myString = "";
const splits = myString.split();
console.log(splits);
// [""]
L'exemple suivant dfinit une fonction qui divise une chane en un tableau de chanes selon un dlimiteur spcifi. Aprs la coupe de la chane, la fonction affiche des messages indiquant la chane initiale (avant la coupe), le dlimiteur utilis, le nombre d'lments dans le tableau, et les lments du tableau retourn.
function splitString(stringToSplit, separator) {
var arrayOfStrings = stringToSplit.split(separator);
console.log(`La chaine d'origine est : ${stringToSplit}`);
console.log(`Le dlimiteur est : ${separator}`);
console.log(
`Le tableau comporte ${arrayOfStrings.length} elements : `,
arrayOfStrings.join(" / "),
);
}
var tempestString = "Oh brave new world that has such people in it.";
var monthString = "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec";
var espace = " ";
var virgule = ",";
splitString(tempestString, espace);
splitString(tempestString);
splitString(monthString, virgule);
Cet exemple produira la sortie suivante :
La chaine d'origine est : "Oh brave new world that has such people in it."
Le dlimiteur est : " "
Le tableau comporte 10 elements : Oh / brave / new / world / that / has / such / people / in / it. /
La chaine d'origine est : "Oh brave new world that has such people in it."
Le dlimiteur est : "undefined"
Le tableau comporte 1 elements : Oh brave new world that has such people in it. /
La chaine d'origine est : "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"
Le dlimiteur est : ","
Le tableau comporte 12 elements : Jan / Feb / Mar / Apr / May / Jun / Jul / Aug / Sep / Oct / Nov / Dec /
Dans l'exemple suivant, split recherche zro ou plusieurs espaces suivis d'un point-virgule, lui-mme suivi par zro ou plus espaces. Lorsque ce motif est trouv, cela supprime celui-ci de la chane. nameList est le tableau retourn du rsultat de split.
var names = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand ";
console.log(names);
var re = /\s*(;|$)\s*/;
var nameList = names.split(re);
console.log(nameList);
Ceci affichera deux lignes dans la console ; la premire ligne correspondant la chane d'origine, et la seconde au tableau de rsultats.
Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand
["Harry Trump","Fred Barney","Helen Rigby","Bill Abel","Chris Hand"]
Dans l'exemple suivant, split() recherche des espaces dans une chane et retourne les 3 premires sous-chanes qui correspondent.
var myString = "Hello World. How are you doing?";
var splits = myString.split(" ", 3);
console.log(splits);
Ce script affichera :
["Hello", "World.", "How"];
Si le paramtre sparateur est une expression rationnelle qui contient des parenthses de capture, les rsultats seront retourns dans le tableau.
var myString = "Hello 1 word. Sentence number 2.";
var splits = myString.split(/(\d)/);
console.log(splits);
Ce script affichera :
["Hello ", "1", " word. Sentence number ", "2", "."];
Note :
\d correspond la classe de caractres pour les chiffres compris entre 0 et 9.
split()Attention : Ce n'est pas une faon robuste d'inverser une chane :
const str = "asdfghjkl";
const strReverse = str.split("").reverse().join("");
// 'lkjhgfdsa'
// split() retourne un tableau sur lequel reverse() et join() peuvent tre appliqus.
Cela ne fonctionne pas si la chane de caractres contient des groupes de graphmes, mme en utilisant une division sensible aux unicodes. (Utilisez, par exemple, esrever la place).
const str = "rsum";
const strReverse = str.split(/(?:)/u).reverse().join("");
// => "emuer"
Bonus : Utiliser l'oprateur === pour tester si la chane d'origine est un palindrome.
| Spcification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-string.prototype.split |
String.prototype.charAt()String.prototype.indexOf()String.prototype.lastIndexOf()Array.prototype.join()Cette page a t modifie le 4 sept. 2026 par les contributeurices du MDN.
StringString.prototype.anchor()String.prototype.at()String.prototype.big()String.prototype.blink()String.prototype.bold()String.prototype.charAt()String.prototype.charCodeAt()String.prototype.codePointAt()String.prototype.concat()String.prototype.endsWith()String.prototype.fixed()String.prototype.fontcolor()String.prototype.fontsize()String.prototype.includes()String.prototype.indexOf()isWellFormed()String.prototype.italics()String.prototype.lastIndexOf()String.prototype.link()String.prototype.localeCompare()String.prototype.match()String.prototype.matchAll()String.prototype.normalize()String.prototype.padEnd()String.prototype.padStart()String.prototype.repeat()String.prototype.replace()String.prototype.replaceAll()String.prototype.search()String.prototype.slice()String.prototype.small()String.prototype.split()String.prototype.startsWith()String.prototype.strike()String.prototype.sub()String.prototype.substr()String.prototype.substring()String.prototype.sup()String.prototype.toLocaleLowerCase()String.prototype.toLocaleUpperCase()String.prototype.toLowerCase()String.prototype.toString()String.prototype.toUpperCase()toWellFormed()String.prototype.trim()String.prototype.trimEnd()String.prototype.trimStart()String.prototype.valueOf()String.prototype[@@iterator]()Object/FunctionCertaines parties de ce contenu sont protges par le droit d'auteur 19982026 des contributeurs individuels de mozilla.org. Contenu disponible sous une licence Creative Commons.
| Web Proxy Viewer | New URL | Original Page |