J'ai une data-123
chaîne.
Comment puis-je supprimer data-
de la chaîne tout en quittant le 123
?
J'ai une data-123
chaîne.
Comment puis-je supprimer data-
de la chaîne tout en quittant le 123
?
Réponses:
var ret = "data-123".replace('data-','');
console.log(ret); //prints: 123
Pour toutes les occurrences à éliminer, utilisez:
var ret = "data-123".replace(/data-/g,'');
PS: La fonction replace renvoie une nouvelle chaîne et laisse la chaîne d'origine inchangée, utilisez donc la valeur de retour de la fonction après l'appel replace ().
Cela n'a rien à voir avec jQuery. Vous pouvez utiliser la replace
fonction JavaScript pour cela:
var str = "data-123";
str = str.replace("data-", "");
Vous pouvez également transmettre une expression régulière à cette fonction. Dans l'exemple suivant, il remplacerait tout sauf les chiffres:
str = str.replace(/[^0-9\.]+/g, "");
0-9
été indiqué.
Vous pouvez utiliser "data-123".replace('data-','');
, comme mentionné, mais comme replace()
ne remplace que la PREMIÈRE instance du texte correspondant, si votre chaîne était quelque chose comme "data-123data-"
alors
"data-123data-".replace('data-','');
ne remplacera que le premier texte correspondant. Et votre sortie sera"123data-"
Donc, si vous voulez que toutes les correspondances de texte soient remplacées dans une chaîne, vous devez utiliser une expression régulière avec le g
drapeau comme ça:
"data-123data-".replace(/data-/g,'');
Et votre sortie sera "123"
vous pouvez utiliser slice (), il returens des caractères entre le début et la fin (point final inclus)
string.slice(start , end);
voici quelques exemples pour montrer comment cela fonctionne:
var mystr = ("data-123").slice(5); // jast define start point so output is "123"
var mystr = ("data-123").slice(5,7); // define start and end so output is "12"
var mystr=(",246").slice(1); // returens "246"
Un simple vieux JavaScript suffira - jQuery n'est pas nécessaire pour une tâche aussi simple:
var myString = "data-123";
var myNewString = myString.replace("data-", "");
Voir: .replace()
docs sur MDN pour plus d'informations et d'utilisation.
Ex:-
var value="Data-123";
var removeData=value.replace("Data-","");
alert(removeData);
J'espère que cela fonctionnera pour vous.
J'étais habitué à la méthode C # (Sharp) String.Remove. En Javascript, il n'y a pas de fonction de suppression pour la chaîne, mais il y a une fonction substr. Vous pouvez utiliser la fonction substr une ou deux fois pour supprimer des caractères de la chaîne. Vous pouvez créer la fonction suivante pour supprimer des caractères au début de l'index jusqu'à la fin de la chaîne, tout comme la première méthode c # surcharge String.Remove (int startIndex):
function Remove(str, startIndex) {
return str.substr(0, startIndex);
}
et / ou vous pouvez également créer la fonction suivante pour supprimer les caractères au début de l'index et du décompte, tout comme la méthode c # deuxième surcharge String.Remove (int startIndex, int count):
function Remove(str, startIndex, count) {
return str.substr(0, startIndex) + str.substr(startIndex + count);
}
et puis vous pouvez utiliser ces deux fonctions ou l'une d'entre elles pour vos besoins!
Exemple:
alert(Remove("data-123", 0, 5));
Sortie: 123
Cette petite fonction que j'ai créée a toujours fonctionné pour moi :)
String.prototype.deleteWord = function (searchTerm) {
var str = this;
var n = str.search(searchTerm);
while (str.search(searchTerm) > -1) {
n = str.search(searchTerm);
str = str.substring(0, n) + str.substring(n + searchTerm.length, str.length);
}
return str;
}
// Use it like this:
var string = "text is the the cool!!";
string.deleteWord('the'); // Returns text is cool!!
Je sais que ce n'est pas le meilleur, mais ça a toujours fonctionné pour moi :)
Utilisation de match()
et Number()
pour renvoyer une number
variable:
Number(("data-123").match(/\d+$/));
// strNum = 123
Voici ce que fait la déclaration ci-dessus ... en milieu de travail:
str.match(/\d+$/)
- renvoie un tableau contenant des correspondances à n'importe quelle longueur de nombres à la fin de str
. Dans ce cas, il renvoie un tableau contenant un seul élément de chaîne ['123']
.Number()
- le convertit en un type numérique. Parce que le tableau renvoyé par .match()
contient un seul élément Number()
renverra le nombre.