J'ai
var id="ctl03_Tabs1";
En utilisant JavaScript, comment pourrais-je obtenir les cinq derniers caractères ou le dernier caractère ?
J'ai
var id="ctl03_Tabs1";
En utilisant JavaScript, comment pourrais-je obtenir les cinq derniers caractères ou le dernier caractère ?
EDIT : Comme d'autres l'ont fait remarquer, il faut utiliser slice(-5)
au lieu de substr
. Cependant, voir le .split().pop()
au bas de cette réponse pour une autre approche.
Réponse originale :
Vous devez utiliser la méthode Javascript pour les chaînes de caractères. .substr()
combiné avec le .length
propriété.
var id = "ctl03_Tabs1";
var lastFive = id.substr(id.length - 5); // => "Tabs1"
var lastChar = id.substr(id.length - 1); // => "1"
Cela récupère les caractères commençant à id.length - 5 et, puisque le deuxième argument de .substr() est omis, continue jusqu'à la fin de la chaîne.
Vous pouvez également utiliser le .slice()
comme d'autres l'ont souligné ci-dessous.
Si vous cherchez simplement à trouver les caractères après le trait de soulignement, vous pouvez utiliser ceci :
var tabId = id.split("_").pop(); // => "Tabs1"
Cette opération divise la chaîne de caractères en un tableau sur le trait de soulignement, puis "extrait" le dernier élément du tableau (qui est la chaîne de caractères que vous voulez).
La première solution peut être rendue plus courte et plus rapide, voir ma réponse ci-dessous. Cependant, je suis d'accord avec l'idée du split and pop dans cette situation particulière.
Génial, je vérifiais s'il y avait une méthode "last" ou "right" en js, ou si je devais utiliser substr et length - je n'aurais pas pensé à split/pop non plus :)
Pour info, si vous avez besoin d'un certain nombre de caractères, la première méthode est plus de 10 fois plus rapide que la méthode pop dans mes tests. J'aime l'élégance de la deuxième méthode et elle a certainement sa place.
Oui, la tranche accepte les valeurs négatives, ce qui est génial ! slice()
référence : developer.mozilla.org/fr/US/docs/Web/JavaScript/Référence/
Cela devrait être la réponse, l'utilisation de la tranche de cette façon est également plus performante : jsperf.com/slice-vs-substrat-et-longueur
Obtenir le dernier caractère est facile, car vous pouvez traiter les chaînes de caractères comme un tableau :
var lastChar = id[id.length - 1];
Pour obtenir une section d'une chaîne de caractères, vous pouvez utiliser la fonction substrat ou la fonction sous-chaîne función:
id.substr(id.length - 1); //get the last character
id.substr(2); //get the characters from the 3rd character on
id.substr(2, 1); //get the 3rd character
id.substr(2, 2); //get the 3rd and 4th characters
La différence entre substr
y substring
est la façon dont le deuxième paramètre (facultatif) est traité. Dans substr
il s'agit du nombre de caractères de l'index (le premier paramètre). Dans substring
c'est l'indice de l'endroit où le découpage des personnages doit s'arrêter.
Le script suivant montre le résultat pour obtenir les 5 derniers caractères et le dernier caractère d'une chaîne en utilisant JavaScript :
var testword='ctl03_Tabs1';
var last5=testword.substr(-5); //Get 5 characters
var last1=testword.substr(-1); //Get 1 character
Sortie :
Tabs1 // A 5 caractères
1 // A obtenu 1 caractère
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
6 votes
Pour obtenir le dernier caractère, la meilleure option serait id.charAt(id.length-1)
70 votes
Note aux lecteurs : assurez-vous de lire au-delà de la première réponse, notamment celle de @Terence.
2 votes
Duplicata possible de comment obtenir le dernier caractère d'une chaîne de caractères ?