Comment utiliser Split?

108

J'ai besoin de casser une chaîne qui ressemble toujours à ceci:

quelque chose - quelque chose_else.

J'ai besoin de mettre "something_else" dans un autre champ d'entrée. Actuellement, cet exemple de chaîne est ajouté à la volée à une ligne de tableau HTML comme ceci:

tRow.append($('<td>').text($('[id$=txtEntry2]').val()));

Je pense que "split" est la voie à suivre, mais il y a très peu de documentation que je peux trouver.

Mat
la source
Alors, que faut-il exactement mettre / ajouter / à quel élément?
Felix Kling
Juste curieux, qu'avez-vous recherché pour ne trouver aucune documentation? J'ai cherché sur Google à la fois "javascript split" et "jquery split" et le premier résultat dans les deux cas était l'emplacement auquel je me suis lié.
Charles Boyung
Et je suis désolé, mais je ne vois pas comment votre exemple de code est lié à votre split()problème. Donnez-nous plus d'informations :)
Felix Kling
Je pensais à tort que c'était une solution jQuery alors qu'en fait c'est en fait une chose javascript. J'ai aussi vu cette documentation mais je l'ai rejetée trop rapidement
Matt
Vous devez vous rappeler que jQuery EST javascript - à moins que vous ne fassiez quelque chose avec des sélecteurs (et quelques autres choses qui commencent par $.), Vous ne faites que du javascript, pas de jQuery.
Charles Boyung

Réponses:

249

La documentation peut être trouvée par exemple chez MDN . Notez que ce .split()n'est pas une méthode jQuery, mais une méthode de chaîne native.

Si vous utilisez .split()sur une chaîne, vous récupérez un tableau avec les sous-chaînes:

var str = 'something -- something_else';
var substr = str.split(' -- ');
// substr[0] contains "something"
// substr[1] contains "something_else"

Si cette valeur se trouve dans un champ, vous pouvez également faire:

tRow.append($('<td>').text($('[id$=txtEntry2]').val().split(' -- ')[0])));

Félix Kling
la source
25

S'il s'agit de la fonction de fractionnement JavaScript de base, consultez la documentation, Méthode JavaScript split () .

En gros, vous faites simplement ceci:

var array = myString.split(' -- ')

Ensuite, vos deux valeurs sont stockées dans le tableau - vous pouvez obtenir les valeurs comme ceci:

var firstValue = array[0];
var secondValue = array[1];
Charles Boyung
la source
0

Selon MDN , la split()méthode divise une chaîne en un ensemble ordonné de sous-chaînes, place ces sous-chaînes dans un tableau et renvoie le tableau.

🔸 Exemple

var str = 'Hello my friend'

var split1 = str.split(' ') // ["Hello", "my", "friend"]
var split2 = str.split('') // ["H", "e", "l", "l", "o", " ", "m", "y", " ", "f", "r", "i", "e", "n", "d"]

🔹 Dans votre cas

var str = 'something -- something_else'
var splitArr = str.split(' -- ') // ["something", "something_else"]

console.log(splitArr[0]) // something
console.log(splitArr[1]) // something_else
Hasan Sefa Ozalp
la source